Pycharm 看不到带有 ../ 的相对路径中的文件

Posted

技术标签:

【中文标题】Pycharm 看不到带有 ../ 的相对路径中的文件【英文标题】:Pycharm does not see files in relative path with ../ 【发布时间】:2016-10-04 19:29:35 【问题描述】:

我正在使用 pycharm 开发一个 python 项目。但是,问题是它拒绝加载相对路径包含../ 的文件。当我尝试

self.image = pygame.image.load("../resources/img/prey.png").convert_alpha()

我明白了:

self.image = pygame.image.load("../resources/img/prey.png").convert_alpha()
pygame.error: Couldn't open ../resources/img/prey.png

问题是当我从终端运行我的代码时,它工作正常,这意味着问题出在 pycharm 上。

现在的问题是,虽然这最初听起来像许多其他问题,其中目录不是工作目录的一部分,但添加:

import os
print os.getcwd()

来自 pycharm 给我/media/Storage/System and dev/Code/Cross Platform/python/boids/current

我的目录结构似乎是正确的:

./current
    ./resources
        ./img
            prey.png
    ./objects
        modules_that_I_import.py
    ./experiments
        code_that_I_actually_run.py

运行self.image=pygame.image.load("../resources/img/prey.png").convert_alpha()的代码在./objects

我在 Linux Mint 上使用 Pycharm Community Edition 2016.1.2Python 2.7

感谢任何帮助。

编辑

从命令行运行os.getcwd 时,我得到/media/Storage/System and dev/Code/Cross Platform/python/boids/current/experiments

【问题讨论】:

在 PyCharm 中使用os.getcwd() 运行代码时会打印什么? 我给出的输出是在pycharm中运行时的 当我从命令行运行os.getcwd 时,我得到/media/Storage/System and dev/Code/Cross Platform/python/boids/current/experiments 【参考方案1】:

当我将 python 文件移动到另一个目录时,我遇到了同样的问题。就我而言,删除运行配置(Run -> Edit Configurations -> Remove Configuration)就足够了。

【讨论】:

【参考方案2】:

转到Run - Edit Configurations,选择您的配置

并将Working directory 更改为/media/Storage/System and dev/Code/Cross Platform/python/boids/current/experiments

【讨论】:

您的“更改 ..to”列出了 两个 不同的目录:单个 Working Directory 怎么会有两个? @javadba 是一个名字包含空格的路径 你是说/media/Storage/System and dev/Code/Cross Platform/python/boids/current/experiments一个目录吗?我很困惑 @javadba 是的,我从问题中得到了它

以上是关于Pycharm 看不到带有 ../ 的相对路径中的文件的主要内容,如果未能解决你的问题,请参考以下文章

pycharm路径找不到桌面

servlet中的相对路径和绝对路径

pycharm 找不到python路径

pycharm同步

如果我在 tsconfig 中使用自定义路径,Webpack 开发服务器找不到带有 Typescript 的模块

Angular AOT 组件中的相对路径