如何将CSV的行以字符串而非列表形式添加到列表中
如何将单列CSV转换为纯字符串列表?
问题的核心是csv.reader返回的每一行row本身是一个列表(哪怕只有一列数据),直接把row追加到key_list里就会得到嵌套结构。只需要修改一行代码就能解决:
把循环里的key_list.append(row)改成key_list.append(row[0]),这样就会把每行的第一个(也是唯一的)字符串元素加入列表。
修改后的完整代码:
import csv key_list = [] with open('key_list.csv','r') as file: reader = csv.reader(file, delimiter = ',') for row in reader: key_list.append(row[0]) # 取每行的第一个元素(单列的内容)
如果你的CSV文件第一行是表头(不属于需要的key内容),可以在循环前加一行代码跳过表头:
import csv key_list = [] with open('key_list.csv','r') as file: reader = csv.reader(file, delimiter = ',') next(reader) # 跳过表头行 for row in reader: key_list.append(row[0])
修改后执行,key_list就会变成你想要的['key_1','key_2','key_3'...]格式,key_list[0]也会是字符串'key_1'。
内容的提问来源于stack exchange,提问作者c_n_blue
相关产品推荐
相关产品推荐

