Python操作csv文件之csv.writer()和csv.DictWriter()方法的基本使用
一、csv.writer()方法的基本使用
示例代碼1:
import csv
data = [
(1,"cat",18),
(2,"dog",17),
(3,"tigger",16),
]
f = open('test.csv','a',encoding='utf8',newline='')
writer = csv.writer(f) # csv.writer()中可以傳一個文件對象
for line in data: # 該data既可以是列表嵌套列表的數(shù)據(jù)類型也可以是列表嵌套元組的數(shù)據(jù)類型
writer.writerow(line)writer()的功能是創(chuàng)建一個常規(guī)Writer的對象,但是調(diào)用writer()的writerow/writerows方法是要傳入的是列表類型數(shù)據(jù)。
注意示例代碼1中打開文件時f = open('test.csv','a',encoding='utf8',newline='')指定newline=‘’參數(shù)可以使每次寫入數(shù)據(jù)不會產(chǎn)生空行,注意根據(jù)需求指定文件的打開方式,該案例中是使用追加的方式打開文件,這樣寫入數(shù)據(jù)的時候,就不會產(chǎn)生是數(shù)據(jù)的覆蓋。
代碼成功運行在test.csv中產(chǎn)生的結(jié)果為:

二、csv.DictWriter()方法的基本使用
示例代碼2:
import csv
data = [
{'id':1,'name':'dog',"age":18},
{'id':2,'name':'cat',"age":19},
{'id':3,'name':'dog',"age":20},
]
f = open('test1.csv','a',encoding='utf8',newline='') # 指定newline=‘'參數(shù)
writer = csv.DictWriter(f,fieldnames=['id','name','age'])
writer.writeheader() # 將字段寫入csv格式文件首行
for line in data:
writer.writerow(line)
DictWriter()的功能是創(chuàng)建一個類似于常規(guī)Writer的對象,但是調(diào)用DictWriter()的writerow/writerows方法是要傳入的是字典類型數(shù)據(jù)。
示例代碼2中的writer.writeheader()作用是將字段寫入,即將DictWriter構(gòu)造方法的fieldnames參數(shù)中的字段寫入csv格式文件的首行,
如果未執(zhí)行writeheader()方法的話是不會將fieldnames中的字段寫入csv格式文件的首行。
代碼成功運行在test1.csv中產(chǎn)生的結(jié)果為:

總結(jié)
到此這篇關(guān)于Python操作csv文件之csv.writer()和csv.DictWriter()方法基本使用的文章就介紹到這了,更多相關(guān)Python csv.writer() csv.DictWriter()方法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
用Python調(diào)用win命令行提高工作效率的實例
今天小編就為大家分享一篇用Python調(diào)用win命令行提高工作效率的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-08-08
pytorch更新tensor中指定index位置的值scatter_add_問題
這篇文章主要介紹了pytorch更新tensor中指定index位置的值scatter_add_問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-06-06
Tensorflow訓(xùn)練模型越來越慢的2種解決方案
今天小編就為大家分享一篇Tensorflow訓(xùn)練模型越來越慢的2種解決方案,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02

