【问题标题】:Open PIL Image in a folder outside directory of script在脚本目录外的文件夹中打开 PIL Image
【发布时间】:2012-07-09 13:20:57
【问题描述】:

我有一个 script.py 位于名为 subfolder1 的文件夹中。该文件夹位于名为 mainfolder 的文件夹中。主文件夹内还有另一个文件夹,称为 subfolder2。我希望 script.py 在 subfolder2 中打开图像并进行一些裁剪等,但我不知道如何正确获取目录。我试过了:

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。

【问题讨论】:

  • 错误信息中的路径是图片应该在的路径吗?图片文件真的存在吗?
  • 我很好,并且仍然发布了答案,即使您过去没有接受任何答案。我希望这个可以解决您的问题。

标签: python image file-io directory python-imaging-library


【解决方案1】:

如果你的目录结构是这样的:

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__ 是模块中的一个内置属性,它告诉您该模块的文件系统路径。

【讨论】:

  • 没什么吧?这对您的问题有帮助吗?
猜你喜欢
  • 1970-01-01
  • 2014-09-18
  • 1970-01-01
  • 1970-01-01
  • 2013-10-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-01
相关资源
最近更新 更多