我有一个data.txt
包含2行文本的文本文件。
first_row_1 first_row_2 first_row_3
second_row_1 second_row_2 second_row_3
我想阅读文本文件的第二行,并将内容转换为python中的字符串列表。该列表应如下所示;
txt_list_str=['second_row_1','second_row_2','second_row_3']
这是我尝试的代码;
import csv
with open('data.txt', newline='') as f:
reader = csv.reader(f)
row1 = next(reader)
row2 = next(reader)
my_list = row2.split(" ")
我得到了错误 AttributeError: 'list' object has no attribute 'split'
我正在使用python v3。
编辑:感谢所有的答案。我敢肯定他们所有的作品。但是有人可以告诉我我自己的尝试代码出了什么问题吗?谢谢。
您的代码不起作用的原因是您试图split
在列表上使用,但是它打算在字符串上使用。因此,在您的示例中,您将用于row2[0]
访问列表的第一个元素。
my_list = row2[0].split(" ")
或者,如果您有权访问该numpy
库,则可以使用loadtxt。
import numpy as np
f = np.loadtxt("data.txt", dtype=str, skiprows=1)
print (f)
# ['second_row_1' 'second_row_2' 'second_row_3']
其结果是数组而不是列表。如果需要列表,可以将数组简单地转换为列表
print (list(f))
#['second_row_1', 'second_row_2', 'second_row_3']
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句