Python:在列表上使用join,输出带有括号



我觉得这可能是一个简单的解决方案,但我似乎想不出来,我的google-fu失败了。

目前,我正在从CSV文件中消费数据,然后读取每一行并附加到列表中。然后使用join将它们全部组合起来,但是输出用括号分隔。我遗漏了什么?

代码:

data_file = csv.reader(open(‘data.csv’,’r’))
ip_addr=[]
for row in data_file:
ip_addr.append(row)
combine_ips = ‘,’.join(map(str, ip_addr))

输出
[‘1.1.1.1’],[‘1.1.1.2’],[‘1.1.1.3’]

我需要的:(当然我需要它是一个字符串)

1.1.1.1.1,1.1.1.2,1.1.1.3

row作为列表计算,即使它在您的情况下只是1的列表,因此您需要做的第一件事是将row转换为字符串,然后将其附加到ip_addr。然后,正如@wrbp所指出的,您只需要连接(现在)ip_addr的字符串内容:

data_file = csv.reader(open("data.csv","r"))
ip_addr=[]
for row in data_file:
ip_addr.append("".join(row))
combine_ips = ",".join(ip_addr)

最新更新