python 报错FileNotFoundError: [Errno 2] No such file or directory

这篇具有很好参考价值的文章主要介绍了python 报错FileNotFoundError: [Errno 2] No such file or directory。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1.FileNotFoundError: [Errno 2] No such file or directory

2.SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape

3.SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape

 4.TypeError: read_file() got an unexpected keyword argument 'encoding


在学习python过程中 遇到了这个问题,

1.FileNotFoundError: [Errno 2] No such file or directory

翻译一下的意思是,这段代码报错信息表示在运行时尝试打开名为 "news.txt" 的文件,但系统找不到这个文件,因此引发了 FileNotFoundError 异常。

但是这个news.txt文件确实已经被创建,那么报错的原因就是代码编写问题,那么很可能是文件路径设置有问题,

再次检查了一下路径发现我代码中写的是相对路径,然后我改成绝对路径,

本以为会顺利解决结果又出现了新的错误

2.SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape

这个错误提示是因为在代码中使用了错误的字符编码,错误提示中提到了 "unicodeescape" 编码无法解码位在 2-3 位置的字节,这表明在读取 "news.txt" 文件时,遇到了一个未被正确解码的 Unicode 字符。

在 Windows 系统中,默认的文本文件编码方式是 GBK(即 GB2312),而在 Linux 和 Mac 系统中,通常使用 UTF-8 编码方式。因此,在读取文件时,需要指定正确的编码方式,以确保文件内容的正确性和一致性。
在调用 read_file 函数时,传入的参数'encoding='gbk'',表示使用 GBK 编码方式读取文件内容。如果在 Linux 或 Mac 系统中使用该函数,应该将参数更改为'encoding='utf8'',以确保正确读取文件内容。

因此当尝试读取使用其他编码的文件时,可能会出现这个错误。

要解决这个问题,你需要确保文件的编码格式与 Python 解释器的默认编码格式(UTF-8)一致。如果 "news.txt" 文件实际上使用了其他编码,例如 GBK 或 GB2312,可以尝试修改代码中的编码参数

如果你不确定文件使用的编码格式,可以尝试使用一些工具(如 Notepad++、Sublime Text 等)打开文件并检查其编码格式。在 Notepad++ 中,你可以通过菜单栏的 "编码" -> "转换编码" 来检查和更改文件的编码格式。

这个问题解决之后又出现了新的问题

3.SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape

 这个错误提示仍然是因为代码中使用了错误的字符编码。尽管你已经尝试了修改编码参数,但似乎没有解决这个问题。

错误提示中提到了 "unicodeescape" 编码无法解码位在 2-3 位置的字节,这表明在读取 "news.txt" 文件时,遇到了一个未被正确解码的 Unicode 字符。但此次错误是因为在代码中使用了双斜杠(//)而不是单斜杠(/)作为字符串分割符。
解决这个问题,需要将代码中的分割符更改为单斜杠(/)

修改之后如下图

filenotfounderror: [errno 2] no such file or directory: '../model/vit_checkp,python,python,开发语言

结果又出现了第四个问题

 4.TypeError: read_file() got an unexpected keyword argument 'encoding

这个错误提示表明在调用 read_file() 函数时,传入了一个意外的关键字参数 'encoding'。这可能是因为尝试了使用 'encoding' 参数来指定文件的编码方式,但实际上这个参数并不属于 read_file() 函数。

问题是在于定义的 read_file() 函数没有接收 encoding 参数。当在调用 read_file() 函数时,传入了一个意外的关键字参数 'encoding',从而导致了报错。
要解决这个问题,你需要修改 read_file() 函数的定义,让它可以接收 encoding 参数。修改后的代码如下:filenotfounderror: [errno 2] no such file or directory: '../model/vit_checkp,python,python,开发语言

最终代码文章来源地址https://www.toymoban.com/news/detail-775246.html

# 1.通过def定义一个函数 函数名  函数参数
def read_file(file_path,encoding):
    """
    读取文件内容
    通过with 创建上下文件资源管理器
    通过open 打开文件
    windows 默认使用gbk

    """

    with open(file_path,'r', encoding='utf8')as f:
       res = f.read()
    return res
# 使用read_file函数读取内容
content = read_file('C:/Users/jin/Desktop/git_work/15.function/news.txt',encoding='gbk' )
print(content)

到了这里,关于python 报错FileNotFoundError: [Errno 2] No such file or directory的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包