您好,登錄后才能下訂單哦!
python中怎么讀寫csv文件并增加行列,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
具體代碼如下所示:
# -*- coding: utf-8 -*- import csv d = list(range(38685)) with open('./kinetics_test.csv') as f1: f_csv = csv.DictReader(f1) for i, row in enumerate(f_csv): #print(row) key1 = 'label' value1 = 'test' row[key1] = value1 key2 = 'is_cc' value2 = '0' row[key2] = value2 d[i] = row f1.close() headers = ['label', 'youtube_id', 'time_start', 'time_end', 'split', 'is_cc'] with open('./kinetics_test_new_.csv', 'w') as f: f_csv = csv.DictWriter(f, headers) f_csv.writeheader() f_csv.writerows(d) f.close() with open('./kinetics_test_new_.csv','rt') as fin: lines='' for line in fin: if line!='\n': lines+=line with open('./kinetics_test_new.csv','wt')as fout: fout.write(lines)
為了下載test數據,
方法一: 用Excel打開csv文件,手動添加label和is_cc;
方法二: 利用python里面的csv模塊改寫。
生成的csv文件中奇怪的多了一些空行,然后找到解決方法,見參考資料。
python使用writerows寫csv文件產生多余空行
python 定義給定初值或長度的list
知識點擴展:
python寫入csv文件的幾種方法總結
最常用的一種方法,利用pandas包
import pandas as pd #任意的多組列表 a = [1,2,3] b = [4,5,6] #字典中的key值即為csv中列名 dataframe = pd.DataFrame({'a_name':a,'b_name':b}) #將DataFrame存儲為csv,index表示是否顯示行名,default=True dataframe.to_csv("test.csv",index=False,sep=',') a_name b_name 0 1 4 1 2 5 2 3 6
同樣pandas也提供簡單的讀csv方法
import pandas as pd data = pd.read_csv('test.csv')
會得到一個DataFrame類型的data,不熟悉處理方法可以參考pandas十分鐘入門
另一種方法用csv包,一行一行寫入
import csv #python2可以用file替代open with open("test.csv","w") as csvfile: writer = csv.writer(csvfile) #先寫入columns_name writer.writerow(["index","a_name","b_name"]) #寫入多行用writerows writer.writerows([[0,1,3],[1,2,3],[2,3,4]]) index a_name b_name 0 1 3 1 2 3 2 3 4
讀取csv文件用reader
import csv with open("test.csv","r") as csvfile: reader = csv.reader(csvfile) #這里不需要readlines for line in reader: print line
看完上述內容,你們掌握python中怎么讀寫csv文件并增加行列的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。