这是我所拥有的:
import csv
a=8
print a
mylist = [a,'2','3']
myfile = open("myfile.csv", "wb") # csv files should always be opened in binary mode
wr = csv.writer(myfile, quoting=csv.QUOTE_ALL)
wr.writerow(mylist)
a = a + 1
print a
wr.writerow(mylist)
正如我所期望的那样,打印的结果是8
and 。9
当我打开我创建的文件时,我得到了结果:
"8","2","3"
"8","2","3"
第一行是我所期望的,但第二行以"8"
而不是开头"9"
。我知道我可以通过在重新定义变量后再次插入来解决这个问题mylist = [a,'2','3']
,但是有人介意向我解释为什么我必须重新插入列表行或者为什么变量没有在列表中自动更新?是否可以使用另一种方法来避免每次要更新变量时都必须重新插入列表行?