- 1、Python csv模塊(讀寫文件)
- 2、利用Python如何將數據寫到CSV文件中
- 3、1 如何用Python導入Excel以及csv數據集
- 4、python怎麼寫入csv文件
CSV文件又稱為逗號分隔值文件,是一種通用的、相對簡單的文件格式,用以存儲表格數據,包括數字或者字符。CSV是電子表格和數據庫中最常見的輸入、輸出文件格式。
通過爬蟲將數據抓取的下來,然後把數據保存在文件,或者數據庫中,這個過程稱為數據的持久化存儲。本節介紹Python內置模塊CSV的讀寫操作。
1)csv.writer()
csv模塊中的writer類可用於讀寫序列化的數據,其語法格式如下:
參數說明:
csvfile:必須是支持迭代(Iterator)的對象,可以是文件(file)對象或者列表(list)對象。
dialect:編碼風格,默認為excel的風格,也就是使用逗號,分隔。
fmtparam:格式化參數,用來覆蓋之前dialect對象指定的編碼風格。
如果想同時寫入多行數據,需要使用writerrows()方法,代碼如下所示:
aggs.csv文件內容:
2)csv.DictWriter()
當然也可使用DictWriter類以字典的形式讀寫數據,使用示例如下:
name.csv文件內容,如下所示:
1)csv,reader()
csv模塊中的reader類和DictReader類用於讀取文件中的數據,其中reader()語法格式如下:
2)csv.DictReader()
應用示例如下:
輸出結果:
開課吧廣場-人才學習交流平台
如果你的數據是列表格式,可以使用一個迭代器,將數據寫入文件,同時添加必要的分隔符以構成csv文件
如果數據是字典格式,需要考慮使用換行符或者其他特殊符號來分割每個字典元素(包括鍵和值)。鍵和值可以考慮使用和之前不重複的分隔符進行分割。
這樣就構成了一個csv文件(csv使用分隔符分割值的文件)
操作方法如下:
1,使用讀寫追加的方式打開csv文件。
2,找到csv文件的結尾。
3,在結尾使用和之前csv使用的分割相同的格式進行數據添加。
4,關閉文件
Excel是一個二進制文件,它保存有關工作簿中所有工作表的信息
CSV代表Comma Separated Values 。這是一個純文本格式,用逗號分隔一系列值
Excel不僅可以存儲數據,還可以對數據進行操作
CSV文件只是一個文本文件,它存儲數據,但不包含格式,公式,宏等。它也被稱為平面文件
Excel是一個電子表格,將文件保存為自己的專有格式,即xls或xlsx
CSV是將表格信息保存為擴展名為.csv的分隔文本文件的格式
保存在excel中的文件不能被文本編輯器打開或編輯
CSV文件可以通過文本編輯器(如記事本)打開或編輯
excel中會有若干個表單,每個表單都會這些屬性:
行數(nrows) 列數(ncols) 名稱(name) 索引(number)
import xlrd //執行操作前需要導入xlrd庫
#讀取文件
excel = xlrd.open_workexcel(“文件地址”) //這裡表格名稱為excel,文件的地址可以從文件的屬性中看到
#讀取表格表單數量
sheet_num= excel.nsheets // sheet_num為變量,其值為表格表單數量
#讀取表格表單名稱
sheet_name = excel.sheet_names() // sheet_name為變量,其值為表格表單名稱
#如果想要看到上述兩個變量,可以使用print()函數將它們打印出來
#想要讀取某個表單的數據,首先獲取表單 excel.sheet_by_index(0)
//表單索引從0開始,獲取第一個表單對象 excel.sheet_by_name(‘xxx’)
// 獲取名為”xxx”的表單對象 excel.sheets()
// 獲取所有的表單對象 獲取單元格的內容:使用cell_value 方法 這裡有兩個參數:行號和列號,用來讀取指定的單元格內容。
第一行的內容是:sheet.row_values(rowx=0)
第一列的內容是:sheet.col_values(colx=0)
CSV是英文Comma Separate Values(逗號分隔值)的縮寫,文檔的內容是由 “,” 分隔的一列列的數據構成的。在python數據處理中也經常用到。
import csv //執行操作前需要導入csv庫
#csv讀取
遍歷其中數據 csv_file = csv.reader(open(‘文件地址’,’r’)) for x in csv_file print(x)
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=Truedataframe.to_csv(“test.csv”,index=False,sep=”)1234567891011
a_name b_name0 1 41 2 52 3 61234
同樣pandas也提供簡單的讀csv方法
import pandas as pddata = pd.read_csv(‘test.csv’)12
會得到一個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]])12345678910
index a_name b_name0 1 31 2 32 3 41234
讀取csv文件用reader
import csvwith open(“test.csv”,”r”) as csvfile:
reader = csv.reader(csvfile) #這裡不需要readlines
for line in reader:
print line
原創文章,作者:ZYM1E,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/127019.html