在Python中,调用例如temp = open(filename,'r').readlines()会得到一个列表,其中每个元素都是文件中的一行。然而,这些字符串在末尾有一个换行符,这是我不想要的。

我怎么能得到没有换行符的数据?


当前回答

您可以使用列表推导式轻松地将文件读取为列表

with open("foo.txt", 'r') as f:
    lst = [row.rstrip('\n') for row in f]

其他回答

temp = open(filename,'r').read().splitlines()
import csv

with open(filename) as f:
    csvreader = csv.reader(f)
    for line in csvreader:
         print(line[0])

您可以使用列表推导式轻松地将文件读取为列表

with open("foo.txt", 'r') as f:
    lst = [row.rstrip('\n') for row in f]
temp = open(filename,'r').read().split('\n')

这个脚本将从文件中提取行,并将每一行不带换行符的行保存在file2中。

file = open("temp.txt", "+r")
file2 = open("res.txt", "+w")
for line in file:
    file2.writelines(f"{line.splitlines()[0]},0\n")
file2.close()

如果你看line,这个值是data\n,所以我们输入splitlines()

要使它作为一个数组和[0]选择唯一的字数据