在程序中引用位于另一个目录的文件
我现在在做一个服务器的工作。我创建了自己的文件夹,但需要访问服务器上另一个文件夹里的文件。简单来说,我有一些代码需要访问另一个文件夹里的文件,但我不知道该怎么做。有没有什么命令可以加到我的代码里,或者在命令行里输入的东西?我在代码中遇到的错误是这样的:
[aburac1][mcbbigram][/ruths/data/aburac1] python get-contribs.py
Traceback (most recent call last):
File "get-contribs.py", line 96, in <module>
fec_files = filter(lambda x: x.endswith('.fec'),os.listdir(dname))
OSError: [Errno 2] No such file or directory: '1001015'
文件1001015位于目录/ruths/data/fec/efr。那么,我该怎么从我的文件夹访问这些文件呢?
2 个回答
1
这行代码的意思是把当前工作目录切换到一个新的地方,具体来说就是切换到路径为“/ruths/data/fec/efr”的文件夹。简单来说,就是告诉电脑:“嘿,去这个文件夹里工作吧!”
1
你可以在输入文件名时指定完整的路径。比如说,如果你想打开一个位于“/home/docs”文件夹里的“foo.txt”文件,你可以运行这个命令:
f = open("/home/docs/foo.txt")
在这里,f 现在是你文件的一个句柄,也就是一个指向这个文件的标识。还有一种方法是使用 os 模块里的 os.chdir 命令,它可以改变当前的工作目录。下面这段代码的效果和上面的一样:
import os
os.chdir("/home/docs")
f = open("foo.txt")