有人可以在Python中找到文件路径上的一些亮点吗?
例如我的代码需要读取一批文件,文件名列出并存储在.txt文件C:\ filelist.txt中,其内容为:
C:\1stfile.txt
C:\2ndfile.txt
C:\3rdfile.txt
C:\4thfile.txt
C:\5thfile.txt
代码以:
开头list_open = open('c:\\aaa.txt')
read_list = list_open.read()
line_in_list = read_list.split('\n')
一切都运行正常。但是如果我想读取另一条路径中的文件,例如:
C:\WorkingFolder\6thfile.txt
C:\WorkingFolder\7thfile.txt
C:\WorkingFolder\8thfile.txt
C:\WorkingFolder\9thfile.txt
C:\WorkingFolder\10thfile.txt
它不起作用。我猜这里的路径C:\ WorkingFolder \没有正确放置,所以Python无法识别它。
那么我会用什么方式呢?感谢。
你好,
抱歉,也许我没有清楚自己。问题是,文本文件c:\ aaa.txt包含以下内容:
C:\1stfile.txt
C:\WorkingFolder\1stfile.txt
为什么只有C:\ 1stfile.txt是可读的,而另一个不是?
答案 0 :(得分:2)
您的程序无法正常工作的原因是您没有正确更改目录。使用os.chdir()执行此操作,然后正常打开文件:
import os
path = "C:\\WorkingFolder\\"
# Check current working directory.
retval = os.getcwd()
print "Current working directory %s" % retval
# Now change the directory
os.chdir( path )
# Check current working directory.
retval = os.getcwd()
print "Directory changed successfully %s" % retval
答案 1 :(得分:2)
import os
BASEDIR = "c:\\WorkingFolder"
list_open = open(os.path.join(BASEDIR, 'aaa.txt'))
答案 2 :(得分:1)
只需尝试使用正斜杠。
list_open = open("C:/WorkingFolder/6thfile.txt", "rt")
它对我有用。