2014-10-31 137 views
-1

我在Python 2.5的脚本,打开一个文件相对路径2.7

f=open("./inputs/variable_list.csv","r") 

它采用脚本的路径从而进入该文件夹来获取CSV。但是,如果我在Python 2.7中运行相同的行,它不知道打开文件的路径

Traceback (most recent call last): 
File "C:\INRO\Emme\Emme4\Python27\Lib\site-packages\pythonwin\pywin\framework\scriptutils.py", line 326, in RunScript 
exec codeObject in __main__.__dict__ 
    File "X:\Daniel\training\model_runs\2010\iter0\write_model_setup_joan.py", line 6, in <module> 
    f=open("./inputs/variable_list.csv","r") 
IOError: [Errno 2] No such file or directory: './inputs/variable_list.csv' 

为什么不能像Python 2.5那样处理路径?还有一种方法可以让2.7处理2.5的路径吗?

+1

为什么要使用*在Windows nix的风格的路径? – phantom 2014-10-31 21:23:48

+1

两种情况下的当前目录是否相同? – BrenBarn 2014-10-31 21:24:39

+0

这是如何写脚本,我没有写它 – 2014-10-31 21:25:00

回答

0

在两种情况下,您的脚本似乎都不会在相同的位置执行。

也许OU应该添加在2.7脚本这些线路的beggining:

import os 
os.chdir('/location/of/your/script') 
+0

这工作,但我仍然不知道原因。必须与python的配置有关 – 2014-10-31 23:00:39