python 使用csv模塊讀寫csv格式文件的示例
更新時(shí)間:2020年12月02日 11:58:13 作者:小公瑾
這篇文章主要介紹了python 使用csv模塊讀寫csv格式文件的示例,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下
import csv
class HandleCsv:
'''
csv文件處理類
'''
def __init__(self, filename):
'''
構(gòu)造器
:param filename: csv文件名
'''
self.filename = filename
def get_data(self):
'''
獲取csv中所有數(shù)據(jù)
:return: 嵌套字典的列表
'''
with open(self.filename, mode='r', encoding='utf-8') as f:
cb = csv.reader(f) # 實(shí)例化reader對(duì)象
header = next(cb) # 獲取表頭,并將指針轉(zhuǎn)向下一行
list_dict = []
for row in cb:
list_dict.append(dict(zip(header, row)))
return list_dict
def get_one_row(self, row):
'''
獲取單行數(shù)據(jù)
:param row: 指定的行號(hào)
:return: 對(duì)應(yīng)行號(hào)的數(shù)據(jù)
'''
return self.get_data()[row - 1]
def write_csv(self, headers, values, data_type, mode='w'):
'''
寫入數(shù)據(jù)到csv到文件中
:param headers: 表頭:列表類型
:param values: 表數(shù)據(jù):1.嵌套元組的列表;2.嵌套字典的列表
:param data_type: 傳入的數(shù)據(jù)類型:1.'tuple';2.'dict'
:param mode: 寫入方式,默認(rèn)寫入“w”
:return:
'''
with open(file=self.filename, mode=mode, encoding='utf-8', newline='') as f:
if data_type == 'tuple':
writer = csv.writer(f) # 實(shí)例化writer對(duì)象
writer.writerow(headers) # 寫入表頭
writer.writerows(values) # 寫入數(shù)據(jù)
elif data_type == 'dict':
writer = csv.DictWriter(f, headers) # 實(shí)例化DictWriter對(duì)象
writer.writeheader() # 寫入表頭
writer.writerows(values) # 寫入數(shù)據(jù)
else:
print("數(shù)據(jù)類型錯(cuò)誤,請(qǐng)確認(rèn)!")
以上就是python 使用csv模塊讀寫csv格式文件的示例的詳細(xì)內(nèi)容,更多關(guān)于python 讀寫csv文件的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
您可能感興趣的文章:
- Python操作CSV格式文件的方法大全
- python基礎(chǔ)教程之csv格式文件的寫入與讀取
- Python利用 utf-8-sig 編碼格式解決寫入 csv 文件亂碼問(wèn)題
- Python把對(duì)應(yīng)格式的csv文件轉(zhuǎn)換成字典類型存儲(chǔ)腳本的方法
- python實(shí)現(xiàn)csv格式文件轉(zhuǎn)為asc格式文件的方法
- python實(shí)現(xiàn)將excel文件轉(zhuǎn)化成CSV格式
- Python實(shí)現(xiàn)將MySQL數(shù)據(jù)庫(kù)表中的數(shù)據(jù)導(dǎo)出生成csv格式文件的方法
- python讀取與寫入csv格式文件的示例代碼
- python操作csv格式文件之csv.DictReader()方法
相關(guān)文章
Python中if語(yǔ)句的使用方法及實(shí)例代碼
if語(yǔ)句能夠進(jìn)行條件測(cè)試,并依據(jù)一定的條件進(jìn)行具體的操作,下面這篇文章主要給大家介紹了關(guān)于Python中if語(yǔ)句的使用方法及實(shí)例代碼,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-11-11
深入分析在Python模塊頂層運(yùn)行的代碼引起的一個(gè)Bug
幾個(gè)星期前, 我的同事跑過(guò)來(lái), 說(shuō)發(fā)現(xiàn)一個(gè)奇怪的Bug: 在使用Python的subprocess運(yùn)行子進(jìn)程時(shí), 當(dāng)子進(jìn)程運(yùn)行失敗時(shí)居然沒(méi)有拋出錯(cuò)誤!2014-07-07
jetson上安裝pycharm的詳細(xì)過(guò)程
Pycharm是一個(gè)非常優(yōu)秀的代碼編輯、調(diào)試,開(kāi)發(fā)軟件,我平時(shí)在Windows系統(tǒng)學(xué)習(xí)編程時(shí)也比較喜歡使用Pycharm,這篇文章主要介紹了jetson上安裝pycharm的過(guò)程,需要的朋友可以參考下2022-07-07
Python圖像處理庫(kù)crop()函數(shù)?thumbnail方法使用詳解
這篇文章主要為大家介紹了Python圖像處理庫(kù)crop()函數(shù)?thumbnail方法使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04

