【问题标题】:No such file or directory, python, visual studio code没有这样的文件或目录,python,visual studio 代码
【发布时间】:2025-12-20 16:45:06
【问题描述】:
grass_img = pygame.image.load('grass.png').convert()

上面的脚本给了我:No such file or directory. 我不知道它是否与 path 有关。因为当我在 Eclipse 中执行此操作时,它不会出错。我在 visual studio 代码中,grass.png 在同一个文件夹中,或者如果我从 C 驱动器 写入完整路径,它仍然是相同的错误。真令人沮丧。我是新的。我将我的项目文件夹添加到 path。我真的只是不明白 path / python 路径

【问题讨论】:

  • 你试过c:/full/path/to/grass.png 吗?使用 / 代替 \ 因为 \ 在字符串(甚至在路径中)中具有特殊含义,例如 \n 用于换行,\t 用于制表符,\Uxxx 用于 Unicode(即在 c:\Users 中)
  • 不同的工具可能会以不同的Current Working Folder 启动脚本(您可以使用os.getcwd() 检查),然后它会在您期望的不同位置搜索您的文件。您应该使用完整路径或更好,您应该使用 BASE = os.path.dirname(os.path.abspath(__file__)) 获取带有脚本的文件夹 - 并使用 os.path.join(BASE, 'grass.png') 获取图像的完整路径。

标签: python path


【解决方案1】:

不同的工具可能会以不同的Current Working Folder 启动脚本(您可以使用os.getcwd() 检查),然后它会在您期望的不同位置搜索您的文件。

您可以使用图像的完整路径,但最好使用os.path 来获取包含脚本的文件夹

BASE = os.path.dirname(os.path.abspath(__file__))

并使用os.path 创建图像的完整路径

...load( os.path.join(BASE, 'grass.png') )...

顺便说一句:

如果您将图像保存在子文件夹中 - 即。 resources - 那你就可以了

...load( os.path.join(BASE, 'resources', 'grass.png') )...

【讨论】:

  • Ty,我这样做了,发现我的路径由于某种原因搞砸了,后来进行了大量重新安装和配置,正确的路径没有问题。
最近更新 更多