在python中没有尾随换行符的情况下读取文件?

Luk*_*rts -1 python file-io file list

所以我决定使用这段代码:

CaseList = []
f_Case = open("C:/Users/Luke Roberts/Desktop/Lists/CaseList.txt", "r")
for line in f_Case:
    CaseList.append(line)
print(CaseList)
Run Code Online (Sandbox Code Playgroud)

但是,当我打印列表时,它出现为:

['Case 1\n', 'Case 2\n', 'Case 3\n', 'Case 4\n', 'Case 5']
Run Code Online (Sandbox Code Playgroud)

有没有办法将它添加到列表中而没有'\n'?如果没有,有没有办法从每个字符串中删除'\n'?

任何和所有的帮助表示赞赏!干杯

cs9*_*s95 5

默认情况下,始终从文件中读取行以及尾随换行符.只需打电话str.rstrip并摆脱它.

for line in f_Case:
    CaseList.append(line.rstrip())
Run Code Online (Sandbox Code Playgroud)

现在,CaseList应该看起来像:

['Case 1', 'Case 2', 'Case 3', 'Case 4', 'Case 5']
Run Code Online (Sandbox Code Playgroud)

法定建议:您应该将文件I/O包装在with...as上下文管理器中,这样可以实现更清晰的代码.

with open("C:/Users/Luke Roberts/Desktop/Lists/CaseList.txt", "r") as f_Case:
    for line in f_Case:
        CaseList.append(line)
Run Code Online (Sandbox Code Playgroud)

这样,您就不必打电话f_Case.close()(您目前没有打电话,但应该打电话),这样您就可以更加方便地享受安全.