IOError - PythonAnywhere.com
IOError - PythonAnywhere.com
我正在尝试 运行 我在 www.pythonanywhere.com 的 Web 应用程序。问题是它将几个文件加载到内存中,在此过程中它 returns IOError: [Errno 2] No such file or directory:.但我确定该目录在那里。
文件夹是:
mysite/files/dictionaryA
2015-01-30 15:06:44,101 : File "/home/tox/mysite/Data.py", line 241, in loadDictionaryAB
2015-01-30 15:06:44,102 : with open(path.relpath('files/dictionaryA'),'rb') as f:
2015-01-30 15:06:44,102 :IOError: [Errno 2] No such file or directory: 'files/dictionaryA'
Data.py
在mysite/files字典里,应该没有问题。 Linux 和 Windows 在我的电脑上没有问题。
如果有任何建议,我将不胜感激。
当前工作目录是解释器启动的位置,而不是您的 .py 脚本所在的位置。要么使用文件的绝对路径,要么确保您知道自己的位置。 os.curdir
显示当前目录。您的主文件夹可以通过 os.path
模块中的 expanduser("~")
获得。弄清楚自己所在的位置后,您可以轻松加入路径,或 os.chdir()
进入您需要的文件夹。
from os.path import expanduser
homedir = expanduser("~")
with open(os.path.join(homedir, "mysite/files/dictionaryA"), 'rb') as f:
# Work with dictionaryA
以上应该适用于您的情况。
我正在尝试 运行 我在 www.pythonanywhere.com 的 Web 应用程序。问题是它将几个文件加载到内存中,在此过程中它 returns IOError: [Errno 2] No such file or directory:.但我确定该目录在那里。
文件夹是: mysite/files/dictionaryA
2015-01-30 15:06:44,101 : File "/home/tox/mysite/Data.py", line 241, in loadDictionaryAB
2015-01-30 15:06:44,102 : with open(path.relpath('files/dictionaryA'),'rb') as f:
2015-01-30 15:06:44,102 :IOError: [Errno 2] No such file or directory: 'files/dictionaryA'
Data.py
在mysite/files字典里,应该没有问题。 Linux 和 Windows 在我的电脑上没有问题。
如果有任何建议,我将不胜感激。
当前工作目录是解释器启动的位置,而不是您的 .py 脚本所在的位置。要么使用文件的绝对路径,要么确保您知道自己的位置。 os.curdir
显示当前目录。您的主文件夹可以通过 os.path
模块中的 expanduser("~")
获得。弄清楚自己所在的位置后,您可以轻松加入路径,或 os.chdir()
进入您需要的文件夹。
from os.path import expanduser
homedir = expanduser("~")
with open(os.path.join(homedir, "mysite/files/dictionaryA"), 'rb') as f:
# Work with dictionaryA
以上应该适用于您的情况。