从文件中打印列表并且不允许我使用.rstrip('/n'):path =('debits.txt','r') f = open('debits.txt') read = f.readlines().rstrip('/n')期望我打印一个漂亮的干净列表,而不'\n'会将每个条目放入列表中。
3 回答

繁星淼淼
TA贡献1775条经验 获得超11个赞
首先,readlines返回一个列表,因此您需要应用rstrip到它的元素,而不是应用到它,并且,您'/n'在代码中进行条带化(应该是'\n'),最后,您没有使用path变量 in open(不使用它不会导致一个错误,但你可能应该使用它,因为你定义了它):
path =('a.txt', 'r')
with open(*path) as f: # use `with` to automatically close the file after reading
read = [l.rstrip('\n') for l in f.readlines()]
另请注意,您可以只使用l.rstrip()(不需要'\n') 来删除空格。

料青山看我应如是
TA贡献1772条经验 获得超8个赞
f.readlines() 返回一个列表,因此请遍历该列表:
f = open('debits.txt', 'r')
read = f.readlines()
for line in read:
line = line.rstrip("\n")
print(line)
f.close()

神不在的星期二
TA贡献1963条经验 获得超6个赞
rstrip()
从字符串中删除\n
而不是列表。这就是你得到错误的原因。在读取文件时使用它:
with open('debits.txt') as f: alist = [line.rstrip() for line in f.readlines()]
添加回答
举报
0/150
提交
取消