为了账号安全,请及时绑定邮箱和手机立即绑定

Pythonopen()给出ioErrno 2没有这样的文件或目录

Pythonopen()给出ioErrno 2没有这样的文件或目录

红颜莎娜 2019-07-10 16:46:37
Pythonopen()给出ioErrno 2没有这样的文件或目录由于某些原因,我的代码在打开一个简单文件时遇到了问题:这是代码:file1 = open('recentlyUpdated.yaml')错误是:IOError: [Errno 2] No such file or directory: 'recentlyUpdated.yaml'当然,我检查了这个文件的正确名称。我试着移动文件,给open()文件的完整路径似乎都不起作用。
查看完整描述

3 回答

?
HUX布斯

TA贡献1876条经验 获得超6个赞

  • 确保文件存在:使用

    os.listdir()

    查看当前工作目录中的文件列表
  • 确保你在你认为你在的目录中

    os.getcwd()

    (如果从IDE启动代码,则很可能位于不同的目录中)
  • 然后,你可以:
    • 打电话

      os.chdir(dir)dir

      作为文件所在的文件夹,然后像您正在做的那样,用它的名称打开文件。
    • 指定您的文件的绝对路径。

      open

      打电话。
  • 如果路径使用反斜杠,请记住使用原始字符串,如下所示:

    dir = r'C:\Python32'

    • 如果不使用原始字符串,则必须转义每个反斜杠:

      'C:\\User\\Bob\\...'

    • 正斜杠也适用于Windows

      'C:/Python32'

      也不需要逃跑。

让我澄清Python如何查找文件:

  • 绝对路径

    是从计算机根目录开始的路径,例如‘C:\Python\script.’如果你在Windows上。
  • 相对路径

    不是从计算机的根目录开始的路径,而是相对于称为

    working directory

    ..您可以通过调用

    os.getcwd().

如果你想open('sortedLists.yaml'),Python将看到您正在向它传递一个相对路径,因此它将搜索当前工作目录中的文件。呼叫os.chdir将更改当前工作目录。

例如:比方说file.txt被发现在C:\Folder.

要打开它,您可以:

os.chdir(r'C:\Folder')open('file.txt') #relative path, looks inside the current working directory

open(r'C:\Folder\file.txt') #full path


查看完整回答
反对 回复 2019-07-10
?
泛舟湖上清波郎朗

TA贡献1818条经验 获得超3个赞

该文件可能存在,但可能有不同的路径。尝试为文件编写绝对路径。

试一试os.listdir()函数来检查至少python是否看到了该文件。

就像这样:

file1 = open(r'Drive:\Dir\recentlyUpdated.yaml')


查看完整回答
反对 回复 2019-07-10
  • 3 回答
  • 0 关注
  • 732 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信