在Python中修改csv文件
我有一个CSV文件,里面有很多IP地址:
192.168.0.1,192.168.0.2,192.168.0.3,192.168.0.4,192.168.0.5,192.168.0.6,192.168.0.7,192.168.0.8,192.168.0.9,192.168.0.10
我想在这个CSV文件的末尾添加一个新的IP地址。目前我使用的代码是用来读取数据的:
requests = csv.reader(open("file.csv", "rb"))
for request in requests:
for ip in request:
print "In List: " + str(ip)
这段代码会输出:
In List: 192.168.0.1
In List: 192.168.0.2
In List: 192.168.0.3
In List: 192.168.0.4
In List: 192.168.0.5
...
然后我尝试了很多方法来把新的IP地址写到文件的末尾,包括这个:
requestWriter = csv.writer(open("file.csv", "w"))
requestWriter.writerow(["192.168.0.X"])
但是这样做会把整个文件替换成新的内容。我还尝试过循环现有的记录,把它们加到新文件里,但这样会把IP地址的每一部分都分开!我是不是漏掉了什么?难道CSV的读写工具没有添加内容的选项吗?
谢谢
1 个回答
9
你为什么不直接添加一行新的数据呢?
fd = open('file.csv','a')
fd.write(yourCsvRowWithNewIP)
fd.close()