我有一个名为subfolder1的文件夹中的script.py。此文件夹位于名为mainfolder的文件夹中。 mainfolder中有另一个名为subfolder2的文件夹。我想script.py在子文件夹2中打开图像并做一些裁剪等,但我不知道如何正确地获取目录。我试过了:
import os
rel = "../subfolder2/1.bmp"
impath = os.path.abspath(rel)
im = Image.open(impath)
但会显示错误消息:
IOError: [Errno 2] No such file or directory: 'C:\\Users\\****\\Desktop\\mainfolder\\subfolder2\\1.bmp'
顺便说一下,我正在使用Windows。
答案 0 :(得分:2)
如果您的目录结构如下所示:
mainfolder/
subfolder1/
script.py
subfolder2/
1.bmp
...然后你可以构建一个相对于script.py
的路径。现在,您只使用相对于当前工作的路径直接启动shell命令。
您可以这样做:
import os
scriptDir = os.path.dirname(__file__)
impath = os.path.join(scriptDir, '../subfolder2/1.bmp')
__file__
是模块中的内置属性,它告诉您该模块的文件系统路径。