使用Python在csv文件中添加新列?

时间:2017-07-23 21:03:31

标签: python csv

使用Python在csv文件中添加新列?

我有一个csv文件。

    c-ip-1         
0   31.7.188.55     
1   68.180.231.57   
2   157.55.39.64    

我使用函数将文件读取为矩阵excel_list:

[[1.0, u'31.7.188.55'], [2.0, u'68.180.231.57'], [3.0, u'157.55.39.64']]

我还有一个名为spider的函数将IP地址转移到位置。但我不知道如何将位置值作为新列保存到文件中。

我的简单代码如下:

for w_index, row in enumerate(excel_list):
    ip = row[1]
    temp_list = spider(ip)  # transfer IP address into location
    row.append(temp_list)

预期的csv文件如下:

    c-ip-1          location
0   31.7.188.55     Germany
1   68.180.231.57   United States
2   157.55.39.64    United States

但它不起作用。也许我不应该使用追加。怎么解决这个问题?

1 个答案:

答案 0 :(得分:0)

可能是因为您没有将更改写回CSV文件,而您只是在内存中修改本地列表?感谢您发布预期的结果,但运行后的CSV是什么样的?

Automate the Boring Stuff - Chapter 14 – Working with CSV Files and JSON Data是一个很好的资源,可能会为您提供进一步的帮助。