您好,登錄后才能下訂單哦!
本篇文章為大家展示了Python中怎么解析CSV文件,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
CSV(逗號分隔值)是一種純文本文件格式,用于存儲(chǔ)表格數(shù)據(jù)(例如電子表格或數(shù)據(jù)庫)。它本質(zhì)上存儲(chǔ)的表格數(shù)據(jù)包括數(shù)字和純文本。大多數(shù)在線服務(wù)使用戶可以自由地將網(wǎng)站中的數(shù)據(jù)導(dǎo)出為CSV文件格式。CSV文件通常會(huì)在Excel中打開,幾乎所有數(shù)據(jù)庫都具有不同的特定工具以允許導(dǎo)入相同的文件。
文件的每一行都稱為記錄。每個(gè)記錄由用逗號分隔 的字段組成,這些字段也稱為“定界符”,這是默認(rèn)定界符,其他記錄包括pipe(|),分號(;)。下面給出的是一個(gè)普通CSV文件的結(jié)構(gòu),以逗號分隔,我正在使用一個(gè)泰坦尼克號CSV文件。
Passenger,Id,Survived,Pclass,Name,Sex.Age 1,0,3 Braund, Mr. Owen Harris ,male, 22 2,1,1 Cumings, Mrs. John Bradley (Florence Briggs Thayer), female,38 3,1,3 Heikkinen, Miss. Laina ,female, 26 4,1,1 Futrelle, Mrs. Jacques Heath (Lily May Peel),female,35
繼續(xù)說說使用CSV文件格式的原因。
CSV是純文本文件,它使數(shù)據(jù)交換更容易,也更易于導(dǎo)入到電子表格或數(shù)據(jù)庫存儲(chǔ)中。例如:您可能希望將某個(gè)統(tǒng)計(jì)分析的數(shù)據(jù)導(dǎo)出到CSV文件,然后將其導(dǎo)入電子表格以進(jìn)行進(jìn)一步分析??傮w而言,它使用戶可以通過編程輕松地體驗(yàn)工作。任何支持文本文件或字符串操作的語言(例如Python)都可以直接使用CSV文件。
繼續(xù)前進(jìn),讓我們看看Python如何原生使用CSV。
Python使用的CSV軟件包是標(biāo)準(zhǔn)庫的一部分,因此您無需安裝它。
import csv
現(xiàn)在,讓我向您展示不同的CSV功能。
在CSV模塊下,您可以找到以下功能:
讓我們繼續(xù)前進(jìn),從Python CSV文件上不同操作的編碼角度來看。
加載CSV文件后,您可以執(zhí)行多種操作。我將在Python中顯示對CSV文件的讀取和寫入操作。
import csv with open('Titanic.csv','r') as csv_file: #Opens the file in read mode csv_reader = csv.reader(csv_file) # Making use of reader method for reading the file for line in csv_reader: #Iterate through the loop to read line by line print(line)
輸出:
在這里,從輸出中可以看到,我已經(jīng)使用了Titanic CSV File。并且所有字段都用逗號分隔,文件被讀入Python。
繼續(xù)前進(jìn),讓我們看看如何寫入CSV文件。
import csv with open('Titanic.csv', 'r') as csv_file: csv_reader = csv.reader(csv_file) with open('new_Titanic.csv', 'w') as new_file: # Open a new file named 'new_titanic.csv' under write mode csv_writer = csv.writer(new_file, delimiter=';') #making use of write method for line in csv_reader: # for each file in csv_reader csv_writer.writerow(line) #writing out to a new file from each line of the original file
out:
現(xiàn)在,這種使用讀寫器方法處理CSV文件的方法是最常見的方法之一。讓我們繼續(xù)前進(jìn),看看如何使用python字典來做同樣的事情。
import csv with open('Titanic.csv','r') as csv_file: #Open the file in read mode csv_reader = csv.DictReader(csv_file) #use dictreader method to reade the file in dictionary for line in csv_reader: #Iterate through the loop to read line by line print(line)
輸出:
從輸出中可以看到,字段已被替換,它們現(xiàn)在充當(dāng)字典的“鍵”。
讓我們看看如何將CSV文件作為字典寫入。
import csv mydict = [{'Passenger':'1', 'Id':'0', 'Survived':'3'}, #key-value pairs as dictionary obj {'Passenger':'2', 'Id':'1', 'Survived':'1'}, {'Passenger':'3', 'Id':'1', 'Survived':'3'}] fields = ['Passenger', 'Id', 'Survived'] #field names filename = 'new_Titanic.csv' #name of csv file with open('new_Titanic.csv', 'w')as new_csv_file: #open a new file 'new_titanic,csv' under write mode writer = csv.DictWriter(new_csv_file, fieldnames=fields) writer.writeheader() #writing the headers(field names) writer.writerows(mydict) #writing data rows
輸出:
讓我們看看如何在python中將CSV文件讀取為熊貓。
import pandas #install pandas package result = pandas.read_csv('Titanic.csv') #read the csv file print(result) # print result
輸出:
上述內(nèi)容就是Python中怎么解析CSV文件,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。