按字符和按行将 txt 文件分成列表列表
Breaking txt file into list of lists by character and by row
我只是在学习编码,我正在尝试获取一个输入 txt 文件并分成一个列表(按行),其中每一行的字符都是该列表的元素。例如,如果文件是:
abcde
fghij
klmno
我想创建
[['a','b','c','d','e'], ['f','g','h','i','j'],['k','l','m','n','o']]
我试过了,但结果不是我想要的。
file = open('alpha.txt', 'r')
lst = []
for line in file:
lst.append(line.rstrip().split(','))
print(lst)
[['abcde', 'fghij', 'klmno']]
我也试过这个,比较接近,但是不知道怎么把两个代码结合起来:
file = open('alpha.txt', 'r')
lst = []
for line in file:
for c in line:
lst.append(c)
print(lst)
['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o']
我尝试将 rstrip
添加到 lst.append
中,但没有成功(或者我没有正确添加)。抱歉 - 这里完全是新手!
我应该提一下,我不想包含换行符。非常感谢任何帮助!
如果您想将字符串拆分成图表,您可以使用 list(s)
(其中 s = 'asdf'
):
file = open('alpha.txt', 'r')
lst = []
for line in file:
lst.append(list(line.strip()))
print(lst)
您正在将每个条目附加到原始列表中。您想要为输入中的每一行创建一个新列表,附加到该列表,然后将该列表附加到您的主列表。例如,
file = open('alpha.txt', 'r')
lst = []
for line in file:
newLst = []
for c in line:
newLst.append(c)
lst.append(newLst)
print(lst)
这个很简单。您必须使用 list()
构造函数将字符串转换为相应的字符。
with open('alpha.txt', 'r') as file:
print([list(line)[:-1] for line in file.readlines()])
(with open
构造只是一个惯用语,因此您不必像关闭文件那样对文件进行所有处理,而您忘记了)
使用嵌套列表理解。外层循环遍历文件中的行,内层循环遍历每行字符串中的字符。
with open('alpha.txt') as f:
out = [[char for char in line.strip()] for line in f]
req = [['a','b','c','d','e'], ['f','g','h','i','j'],['k','l','m','n','o']]
print(out == req)
打印
True
我只是在学习编码,我正在尝试获取一个输入 txt 文件并分成一个列表(按行),其中每一行的字符都是该列表的元素。例如,如果文件是:
abcde
fghij
klmno
我想创建
[['a','b','c','d','e'], ['f','g','h','i','j'],['k','l','m','n','o']]
我试过了,但结果不是我想要的。
file = open('alpha.txt', 'r')
lst = []
for line in file:
lst.append(line.rstrip().split(','))
print(lst)
[['abcde', 'fghij', 'klmno']]
我也试过这个,比较接近,但是不知道怎么把两个代码结合起来:
file = open('alpha.txt', 'r')
lst = []
for line in file:
for c in line:
lst.append(c)
print(lst)
['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o']
我尝试将 rstrip
添加到 lst.append
中,但没有成功(或者我没有正确添加)。抱歉 - 这里完全是新手!
我应该提一下,我不想包含换行符。非常感谢任何帮助!
如果您想将字符串拆分成图表,您可以使用 list(s)
(其中 s = 'asdf'
):
file = open('alpha.txt', 'r')
lst = []
for line in file:
lst.append(list(line.strip()))
print(lst)
您正在将每个条目附加到原始列表中。您想要为输入中的每一行创建一个新列表,附加到该列表,然后将该列表附加到您的主列表。例如,
file = open('alpha.txt', 'r')
lst = []
for line in file:
newLst = []
for c in line:
newLst.append(c)
lst.append(newLst)
print(lst)
这个很简单。您必须使用 list()
构造函数将字符串转换为相应的字符。
with open('alpha.txt', 'r') as file:
print([list(line)[:-1] for line in file.readlines()])
(with open
构造只是一个惯用语,因此您不必像关闭文件那样对文件进行所有处理,而您忘记了)
使用嵌套列表理解。外层循环遍历文件中的行,内层循环遍历每行字符串中的字符。
with open('alpha.txt') as f:
out = [[char for char in line.strip()] for line in f]
req = [['a','b','c','d','e'], ['f','g','h','i','j'],['k','l','m','n','o']]
print(out == req)
打印
True