我刚刚安装了Python成像库并开始学习它,但我无法打开图像文件。
import Image
im = Image.open("Desert.jpg")
print im.format, im.size, im.mode
im.show()
图像属性打印得很好但是当在Windows查看器中打开图像时,我收到错误
File "C:\Python27\Lib\site-packages\pythonwin\pywin\framework\scriptutils.py"
,line 325, in RunScript
exec codeObject in __main__.__dict__
File "C:\Users\Hassan\Documents\imtest.py", line 2, in <module>
im = Image.open('Desert.jpg')
File "C:\Python27\lib\site-packages\PIL\Image.py", line 1952, in open
fp = __builtin__.open(fp, "rb")
IOError: [Errno 2] No such file or directory: 'Desert.jpg'
我已将文件Desert.jpg放在保存此脚本的同一目录中。我该怎么办才能打开此文件。
答案 0 :(得分:4)
使用绝对路径。您可以获取脚本的路径来创建该路径:
import os.path
script_dir = os.path.dirname(os.path.abspath(__file__))
im = Image.open(os.path.join(script_dir, 'Desert.jpg'))
否则,相对文件(没有绝对路径的任何内容)相对于当前工作目录打开,这完全取决于您如何启动脚本和操作系统默认值。
__file__
变量是当前模块的文件名,os.path
调用确保它是完整的绝对路径(因此在Windows上包含驱动器,从/
开始POSIX系统),然后我们从中获取目录部分。