Python 在脚本目录外的文件夹中打开PIL映像
我有一个script.py位于名为subfolder1的文件夹中。此文件夹位于名为mainfolder的文件夹中。mainfolder中还有一个名为subfolder2的文件夹。我想让script.py在子文件夹2中打开一个图像并进行一些裁剪等操作,但我不知道如何获得正确的目录。我试过:Python 在脚本目录外的文件夹中打开PIL映像,python,image,file-io,directory,python-imaging-library,Python,Image,File Io,Directory,Python Imaging Library,我有一个script.py位于名为subfolder1的文件夹中。此文件夹位于名为mainfolder的文件夹中。mainfolder中还有一个名为subfolder2的文件夹。我想让script.py在子文件夹2中打开一个图像并进行一些裁剪等操作,但我不知道如何获得正确的目录。我试过: import os rel = "../subfolder2/1.bmp" impath = os.path.abspath(rel) im = Image.open(impath) 但出现以下错误消息: I
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。如果您的目录结构如下所示:
mainfolder/
subfolder1/
script.py
subfolder2/
1.bmp
import os
scriptDir = os.path.dirname(__file__)
impath = os.path.join(scriptDir, '../subfolder2/1.bmp')
。。。然后可以构造一个相对于script.py
的路径。现在,您只使用与当前工作相关的路径,直接在其中启动shell命令
您可以这样做:
mainfolder/
subfolder1/
script.py
subfolder2/
1.bmp
import os
scriptDir = os.path.dirname(__file__)
impath = os.path.join(scriptDir, '../subfolder2/1.bmp')
文件是模块中的内置属性,它告诉您该模块的文件系统路径。错误消息中的路径是映像应该位于的路径吗?图片文件真的存在吗?我很好,仍然发布了一个答案,尽管你过去没有接受过任何一个。我希望这个能解决你的问题,没什么?这对你的问题有帮助吗?