Python用csv寫(xiě)入文件_消除空余行的方法
只做簡(jiǎn)單地記錄,方便一下使用!python關(guān)于csv模塊的介紹網(wǎng)上有很多資料,這里就不在贅訴。直接給出代碼和解釋。
數(shù)據(jù):
Symbol,Price,Date,Time,Change,Volume "AA",39.48,"6/11/2007","9:36am",-0.18,181800 "AIG",71.38,"6/11/2007","9:36am",-0.15,195500 "AXP",62.58,"6/11/2007","9:36am",-0.46,935000 "BA",98.31,"6/11/2007","9:36am",+0.12,104800 "C",53.08,"6/11/2007","9:36am",-0.25,360900 "CAT",78.29,"6/11/2007","9:36am",-0.23,225400
一、csv讀入文件消除空余行
import csv
#@param: wb:覆蓋原來(lái)的文件內(nèi)容
#@param: ab+:追加文件內(nèi)容
with open('input.csv','wb') as f:
f_csv = csv.writer(f)
f_csv.writerow(headers) #讀入項(xiàng)目標(biāo)簽名
# f_csv.writerows(rows)
id = 1
for row in rows:
row = list(row) #轉(zhuǎn)換成list,因?yàn)樵际莟upple
row.insert(0,id) #根據(jù)特定的題目要求!
f_csv.writerow(row)
id += 1
二、讀取為一個(gè)元組的序列
import csv
with open('stocks.csv') as f:
f_csv = csv.reader(f)
headers = next(f_csv)
for row in f_csv:
# Process row
...
在上面的代碼中, row 會(huì)是一個(gè)列表。因此,為了訪問(wèn)某個(gè)字段,你需要使用下標(biāo),如 row[0] 訪問(wèn)Symbol, row[4] 訪問(wèn)Change。
三、將數(shù)據(jù)讀取到一個(gè)字典序列中
mport csv
with open('stocks.csv') as f:
f_csv = csv.DictReader(f)
for row in f_csv:
# process row
...
在這個(gè)版本中,你可以使用列名去訪問(wèn)每一行的數(shù)據(jù)了。比如,row['Symbol'] 或者 row['Change']。
四、寫(xiě)入數(shù)據(jù)
為了寫(xiě)入CSV數(shù)據(jù),你仍然可以使用csv模塊,不過(guò)這時(shí)候先創(chuàng)建一個(gè) writer 對(duì)象。例如:
rows = [('AA', 39.48, '6/11/2007', '9:36am', -0.18, 181800),
('AIG', 71.38, '6/11/2007', '9:36am', -0.15, 195500),
('AXP', 62.58, '6/11/2007', '9:36am', -0.46, 935000),
]
with open('stocks.csv','w') as f:
f_csv = csv.writer(f)
f_csv.writerow(headers)
f_csv.writerows(rows)
如果你有一個(gè)字典序列的數(shù)據(jù),可以像這樣做:
headers = ['Symbol', 'Price', 'Date', 'Time', 'Change', 'Volume']
rows = [{'Symbol':'AA', 'Price':39.48, 'Date':'6/11/2007',
'Time':'9:36am', 'Change':-0.18, 'Volume':181800},
{'Symbol':'AIG', 'Price': 71.38, 'Date':'6/11/2007',
'Time':'9:36am', 'Change':-0.15, 'Volume': 195500},
{'Symbol':'AXP', 'Price': 62.58, 'Date':'6/11/2007',
'Time':'9:36am', 'Change':-0.46, 'Volume': 935000},
]
with open('stocks.csv','w') as f:
f_csv = csv.DictWriter(f, headers)
f_csv.writeheader()
f_csv.writerows(rows)
寫(xiě)入數(shù)據(jù)最麻煩的問(wèn)題就是無(wú)緣無(wú)故的每行數(shù)據(jù)結(jié)束后都會(huì)自動(dòng)多出一個(gè)空行的問(wèn)題。這就是寫(xiě)這篇文章的意義,處理方法就是《一》中的介紹的內(nèi)容。
以上這篇Python用csv寫(xiě)入文件_消除空余行的方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python3 實(shí)現(xiàn)文件批量重命名示例代碼
在Python中os模塊里,os.renames() 方法用于遞歸重命名目錄或文件。這篇文章主要介紹了Python3 文件批量重命名操作示例,需要的朋友可以參考下2019-06-06
詳解Python網(wǎng)絡(luò)爬蟲(chóng)功能的基本寫(xiě)法
這篇文章主要介紹了Python網(wǎng)絡(luò)爬蟲(chóng)功能的基本寫(xiě)法,網(wǎng)絡(luò)爬蟲(chóng),即Web Spider,是一個(gè)很形象的名字。把互聯(lián)網(wǎng)比喻成一個(gè)蜘蛛網(wǎng),那么Spider就是在網(wǎng)上爬來(lái)爬去的蜘蛛,對(duì)網(wǎng)絡(luò)爬蟲(chóng)感興趣的朋友可以參考本文2016-01-01
pycharm 更改創(chuàng)建文件默認(rèn)路徑的操作
今天小編就為大家分享一篇pycharm 更改創(chuàng)建文件默認(rèn)路徑的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02
讀寫(xiě)json中文ASCII亂碼問(wèn)題的解決方法
下面小編就為大家?guī)?lái)一篇讀寫(xiě)json中文ASCII亂碼問(wèn)題的解決方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-11-11
python中關(guān)于os.path.pardir的一些坑
這篇文章主要介紹了python中關(guān)于os.path.pardir的一些坑及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09
Python3搭建http服務(wù)器的實(shí)現(xiàn)代碼
這篇文章主要介紹了Python3搭建http服務(wù)器的實(shí)現(xiàn)代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02
利用Python如何將數(shù)據(jù)寫(xiě)到CSV文件中
在數(shù)據(jù)分析中經(jīng)常需要從csv格式的文件中存取數(shù)據(jù)以及將數(shù)據(jù)寫(xiě)書(shū)到csv文件中。下面這篇文章主要給大家介紹了關(guān)于利用Python如何將數(shù)據(jù)寫(xiě)到CSV文件中的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2018-06-06

