为什么读取时无法使用路径

时间:2019-07-25 13:49:16

标签: python

当我只是将文件夹的路径写入变量时,它可以工作,但是当我在简单的txt文件中读取路径时,它不起作用 示例:

path = "path to a folder"有效

但是当我使用时:

path = lines[0]无效

我的应用程序去读取存储路径的txt文件的第一行,然后将其存储在path变量中。

我试图查看路径是否被正确读取,是的,如果我打印路径,它总是很好,但是不起作用。

txt=open('/Users/patrick/Desktop/config.txt','r')
lines = txt.readlines()
path = lines[0]
files = []

for r, d, f in os.walk(path):
    for file in f:
        files.append(os.path.join(r, file))

2 个答案:

答案 0 :(得分:2)

您需要删除white spaces\n新行字符,因为readlines返回包含\n的行。

txt=open('/Users/patrick/Desktop/config.txt','r')
lines = [line.strip() for line in txt.readlines()]
path = lines[0]
files = []

for r, d, f in os.walk(path):
    for file in f:
        files.append(os.path.join(r, file))

您可以使用readlines字符来使用readsplit来代替\n

text = open('/Users/patrick/Desktop/config.txt','r').read()
lines = text.split("\n")
path = lines[0]
files = []

for r, d, f in os.walk(path):
    for file in f:
        files.append(os.path.join(r, file))

希望有帮助!

答案 1 :(得分:0)

readline将尾随换行符留在行中。使用:

path = lines[0].strip()