【发布时间】:2017-10-24 10:05:47
【问题描述】:
我经常使用终端运行程序,因为这样可以将速度提高 3 倍。我最近从 2016 版 Pycharm 升级到 2017 版,现在我无法再在终端中运行该程序。终端不喜欢的行是:
wb4 = load_workbook('../temp_proof.xlsx')
同样,这条线在 Pycharm 上运行良好。我去终端并确保它在正确的目录中,当我按下 ls 时,该文件在目录中。
Here is the terminal error message:
File "/Users/bobsmith/PycharmProjects/inference_engine2/inference2/Proofs/prove.py", line 36, in <module>
wb4 = load_workbook('../temp_proof.xlsx')
File "/Library/Python/2.7/site-packages/openpyxl/reader/excel.py", line 151, in load_workbook
archive = _validate_archive(filename)
File "/Library/Python/2.7/site-packages/openpyxl/reader/excel.py", line 115, in _validate_archive
archive = ZipFile(filename, 'r', ZIP_DEFLATED)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/zipfile.py", line 756, in __init__
self.fp = open(file, modeDict[mode])
IOError: [Errno 2] No such file or directory: '../temp_proof.xlsx'
【问题讨论】:
-
显然Pycharm和console中使用的环境设置不同;再次检查两者,如果在检查项目环境的 pycharm 端之前它正在工作 - 可能会注意到一些异常。从 2016 年升级到 2017 年时,我也遇到了问题 - 他们在更新过程中有一些错误;另一个解决方案 - 有下一个 2017 升级 - 安装它,如果你仍然有 2016 conf 使用它。
-
问题出在运行python文件的位置,尝试将完整路径传递给python程序中的文件,或者将文件保存在与python文件相同的目录中,然后调用程序
-
Drako,我不知道你的设置是什么意思。终端不应该使用 Pycharm 所做的所有设置吗? Exprator,我尝试了您的解决方案,但它不起作用,但感谢您的帮助。
-
如果在命令行中(在您尝试运行 python 的终端中,它失败了)您键入:
ls ../temp_proof.xlsx,会发生什么?如果它失败(我认为它应该失败),你在“错误”文件夹中。打开 PyCharm 的菜单:Run -> Edit Configurations...,选择您自己的(如果有更多)并检查 Working directory。这也是您在终端中应该拥有的路径。当然,真正的解决方案是不在代码中使用当前目录的相对路径。
标签: python python-2.7 terminal pycharm