import csv
# 用列表方式写入
with open("test.csv","w",newline="") as f:
# 注意,执行newline=""那么数据会自动换行,如果不指定,那么会多换一行
writer = csv.writer(f)
writer.writerow(["symbol","date","close"])
writer.writerow(["rb2101","20200907","3736"])
writer.writerow(["rb2101","20200908","3719"])
writer.writerow(["rb2101","20200909","3758"])
# symbol,date,close
# rb2101,20200907,3736
# rb2101,20200908,3719
# rb2101,20200909,3758
f = open("test.csv","w",newline="")
writer = csv.writer(f)
writer.writerow(["symbol","date","close"])
writer.writerow(["rb2101","20200907","3736"])
writer.writerow(["rb2101","20200908","3719"])
writer.writerow(["rb2101","20200909","3758"])
f.close() # 将内存中的数据输出到文本中
# 用字典的方式写入
with open("test2.csv","w",newline="") as f:
writer = csv.DictWriter(f,fieldnames=["symbol","date","close"])
writer.writeheader()
data = [
{
"symbol":"rb2101",
"date":"20200907",
"close":"3736",
},
{
"symbol":"rb2101",
"date":"20200908",
"close":"3719",
},
{
"symbol":"rb2101",
"date":"20200909",
"close":"3758" ,
}
]
for d in data:
writer.writerow(d)
# symbol,date,close
# rb2101,20200907,3736
# rb2101,20200908,3719
# rb2101,20200909,3758
with open("test2.csv","r") as f:
reader = csv.DictReader(f)
for row in reader:
print(row)
{'symbol': 'rb2101', 'date': '20200907', 'close': '3736'}
{'symbol': 'rb2101', 'date': '20200908', 'close': '3719'}
{'symbol': 'rb2101', 'date': '20200909', 'close': '3758'}
with open("test2.csv","r") as f:
reader = csv.reader(f)
for row in reader:
print(row)
['symbol', 'date', 'close']
['rb2101', '20200907', '3736']
['rb2101', '20200908', '3719']
['rb2101', '20200909', '3758']