鑰匙要點
-
Python的內置CSV模塊提供了以CSV格式閱讀,寫作和處理數據的功能和類。 CSV.Reader()函數可用於讀取CSV文件,而CSV.WRITER()允許將數據寫入CSV文件。
- 。 CSV文件可以使用Python的csv.dictreader類轉換為JSON格式,該類別將CSV文件轉換為Python詞典。然後可以使用json.dump()函數將字典轉換為JSON文件。 > 可以通過首先使用JSON.LOAD()函數將JSON文件轉換為Python字典來將JSON文件轉換為CSV格式。然後可以使用CSV.DICTWRITER類方法將字典轉換為CSV文件。
- CSV文件通常用於電子表格和數據庫中的數據導入和導出。 Python的CSV模塊簡化了使用CSV文件,並將其轉換為其他格式,例如JSON。
- >在本文中,我們將學習如何使用Python從CSV文件中讀取和寫入數據,以及如何將CSV文件轉換為JSON格式,反之亦然。我們將探索如何使用CSV模塊,並查看有助於了解其工作原理的示例。
- a csv(逗號分隔值)文件是一種文本文件格式,允許數據保存在表格結構中。這是一種流行的格式,用於從數據庫和電子表格導出和導入數據。
打開時,csv文件的內容如下:
>
>如上所述,逗號定界符,、,用來將文件中的每個特定數據分開。
>>第一行數據可以選擇用作標題,並識別其下面的每一列數據。 CSV文件通常用.CSV文件擴展名保存。
Employee Id,First Name,Gender,Start Date,Last Login Time,Salary,Bonus %,Senior Management,Team 1,Douglas,Male,8/6/1993,12:42 PM,,6.945,TRUE,Marketing 2,Thomas,Male,3/31/1996,6:53 AM,61933,4.17,, 3,Maria,Female,4/23/1993,11:17 AM,,11.858,FALSE,Finance 4,Jerry,Male,3/4/2005,1:00 PM,138705,9.34,,Finance> CSV模塊
>可以將電子表格和數據庫(如MS SQL)導入並導出為CSV文件,因此重要的是要知道如何以編程方式處理CSV格式的數據。大多數編程語言(如Python)支持CSV中的處理文件,並將其轉換為JSON等其他格式。
Python提供了用於讀取,編寫和執行其他形式的文件處理的模塊,以CSV格式讀取和執行其他形式的文件。內置庫提供的功能和類,使使用CSV文件無縫。
如何使用Python讀取CSV文件
>> csv 模塊具有用於讀取CSV文件的csv.reader()函數。它與對象(包括文件對象)一起使用,例如使用Python的In-In-op-Open()函數生成的對象。
>從呼叫打開()中給定的文件對象,csv.reader()將返回讀取器對象。讀取器對象可以用來迭代CSV數據的每一行,其中行返回作為字符串列表。
讓我們以一個例子:
Employee Id,First Name,Gender,Start Date,Last Login Time,Salary,Bonus %,Senior Management,Team 1,Douglas,Male,8/6/1993,12:42 PM,,6.945,TRUE,Marketing 2,Thomas,Male,3/31/1996,6:53 AM,61933,4.17,, 3,Maria,Female,4/23/1993,11:17 AM,,11.858,FALSE,Finance 4,Jerry,Male,3/4/2005,1:00 PM,138705,9.34,,Finance這是上述代碼的輸出:
>在第一個代碼段中,打開了員工。 csv文件,然後csv.reader()函數解析並返回讀取器對象。一個簡單的循環用於迭代讀取器對象,該對像從employ.csv文件中返回每行數據列表,從頂部開始。
<span>import csv </span> <span>with open('employees.csv', newline='') as file_obj: </span> reader_obj <span>= csv.reader(file_obj) </span> <span>for row in reader_obj: </span> <span>print(row) </span>
如何使用Python
寫入CSV文件>除了從CSV文件中讀取數據外,我們還可以在Python中將數據寫入這些文件。 csv.writer()函數使我們能夠將數據寫入CSV格式。在寫入模式下打開文件後,csv.writer()函數返回一個作者對象,該對象將所提供的數據轉換為提供的文件對像上的劃界字符串。作者對象具有編寫一行的作者()方法(每次逗號或逗號分隔值的數量),而Writerows()方法一次用於多行。 writerow()和writerows()方法是將數據編寫到CSV文件的兩個選項。
>>上面的代碼段中使用的所有列表對像都可以分組為2D列表,並將其作為參數傳遞給Writerows()作者對象的writer()方法以實現相同的結果。
執行使用語句後,在包含這些逗號分隔的當前工作目錄中創建了一個CSV文件(products.csv)。這是一個示例:
這是上述代碼的輸出:
如何使用python
<span>['Employee Id', 'First Name', 'Gender', 'Start Date', 'Last Login Time', 'Salary', 'Bonus %', 'Senior Management', 'Team'] </span><span>['1', 'Douglas', 'Male', '8/6/1993', '12:42 PM', '', '6.945', 'TRUE', 'Marketing'] </span><span>['2', 'Thomas', 'Male', '3/31/1996', '6:53 AM', '61933', '4.17', '', ''] </span><span>['3', 'Maria', 'Female', '4/23/1993', '11:17 AM', '', '11.858', 'FALSE', 'Finance'] </span><span>['4', 'Jerry', 'Male', '3/4/2005', '1:00 PM', '138705', '9.34', '', 'Finance'] </span><span>['5', 'Larry', 'Male', '1/24/1998', '4:47 PM', '101004', '1.389', 'TRUE', 'Client Services'] </span><span>... </span>將CSV轉換為JSON 在執行文件I/O操作時,我們可能需要將CSV文件轉換為JSON格式 - 這是在客戶端和服務器之間接收和傳輸數據的流行。
csv
模塊提供了csv.dictreader類,以幫助我們實現這一目標。<span>import csv </span> <span>with open('products.csv', 'w', newline='') as file_obj: </span> writer_obj <span>= csv.writer(file_obj) </span> writer_obj<span>.writerow(['Product Name', 'Price', 'Quantity', 'SKU Number' ]) </span> writer_obj<span>.writerow(['Rice', 80, 35, 'RI59023']) </span> writer_obj<span>.writerow(['Curry', 2, 200, 'CY13890']) </span> writer_obj<span>.writerow(['Milk', 9.5, 315, 'MK10204']) </span>
> csv.dictreader類方法有助於在應用
json模塊的json.dump()函數之前將給定的CSV文件轉換為Python字典,以將結果Python字典轉換為JSON文件。 csv.dictreader()類採用可選的字段名稱參數。省略字段名稱的地方,第一行的值將映射到其餘數據為字段名稱。 讓我們來看看一個示例:
這是上述代碼的輸出:
- >在讀取模式下打開員工。 >使用csv.dictreader類返回的文件對象創建了Python字典
- >在寫入模式下打開一個JSON文件,例如員工。
- >使用 json
- 模塊的dump()函數將python字典(my_dict)轉換為json文件> 如何使用python
csv
和jsonpython模塊。 json模塊的json.load()函數將有助於將json文件轉換為python詞典,而csvcsv 模塊的csv.dictwiter類方法將有助於將python字典轉換為csv file。 這是一個示例:
>要將JSON文件轉換為CSV等效,我們應用了以下步驟:
Employee Id,First Name,Gender,Start Date,Last Login Time,Salary,Bonus %,Senior Management,Team 1,Douglas,Male,8/6/1993,12:42 PM,,6.945,TRUE,Marketing 2,Thomas,Male,3/31/1996,6:53 AM,61933,4.17,, 3,Maria,Female,4/23/1993,11:17 AM,,11.858,FALSE,Finance 4,Jerry,Male,3/4/2005,1:00 PM,138705,9.34,,Finance
在讀取模式下打開員工。
>使用JSON.LOAD()函數創建Python字典py_dict- >在寫入模式下打開了CSV文件files_records.csv(如果沒有這樣的文件,將創建一個文件) )
- >使用CSV.DICTWRITER類創建一個帶有必要參數的作者對象
>使用作者對象方法將詞典映射到適當的行數 - >
- 結論
- > CSV文件非常受歡迎,並且經常用於導出和導入電子表格和數據庫。使用數據的人經常使用此文件格式。但是,在使用Python進行編程時,可能需要快速使用CSV文件,因此學習如何使用CSV執行文件I/O操作很重要。
csv
模塊非常方便地使用CSV文件,因為它為這類任務提供了必要的功能和類。>也必須注意,我們可能需要將文件從一種格式轉換為另一種格式(CSV至JSON),如上所述。
經常詢問有關Python CSV文件的問題(常見問題解答)>如何處理python中的大型CSV文件?但是,Python的內置CSV模塊提供了一種在較小的塊中讀取和編寫CSV文件的方法,從而使使用大型文件可以使用。您可以在循環中使用讀取器對像一次讀取特定數量的行。這樣,您可以在較小,更易於管理的塊中處理一個大文件。
>如何在Python中寫入CSV文件?>>如何在Python中使用不同的定係數來處理CSV文件?讀者和作者對象採用定界符參數,您可以將其設置為CSV文件用作定界器的任何字符。
如何使用Python中的標頭(
)處理CSV文件?您的CSV文件包含一個標題行,您可以使用CSV模塊中的Dictreader對象讀取文件。該對象將每一行視為詞典,其中鍵是標題行中的列名,並且值是每個行中的數據。
>>如何使用Python中的引用字段來處理CSV文件? >
>如何處理Python中的特殊字符的CSV文件?
>>如果您的CSV文件包含特殊字符,則可以通過以二進制模式打開文件並使用Unicodecsv模塊而不是內置CSV模塊來處理它們。該模塊就像CSV模塊一樣工作,但它支持Unicode字符。
如何使用PANDAS處理CSV文件中的CSV文件,而Python中缺少值的CSV文件? Python的圖書館。您可以將CSV文件讀取到dataFrame中,然後使用fillna方法填充缺少值或計算值的值。
>如何將CSV文件轉換為Python中的其他格式? 如何通過Python中的特定列對CSV文件進行分類? >
>您可以使用Python中的Pandas庫通過特定列對CSV文件進行排序。在將CSV文件讀取到數據框中後,您可以使用sort_values方法按一個或多個列對數據框進行排序。如何根據python的條件過濾CSV文件中的行?
>您可以使用Python中的PANDAS庫中的條件過濾CSV文件中的行。將CSV文件讀取到數據框中後,您可以使用布爾索引根據條件過濾數據框。
以上是使用Python使用CSV文件,並示例的詳細內容。更多資訊請關注PHP中文網其他相關文章!

Python是解釋型語言,但也包含編譯過程。 1)Python代碼先編譯成字節碼。 2)字節碼由Python虛擬機解釋執行。 3)這種混合機制使Python既靈活又高效,但執行速度不如完全編譯型語言。

UseeAforloopWheniteratingOveraseQuenceOrforAspecificnumberoftimes; useAwhiLeLoopWhenconTinuingUntilAcIntiment.forloopsareIdealForkNownsences,而WhileLeleLeleLeleLeleLoopSituationSituationsItuationsItuationSuationSituationswithUndEtermentersitations。

pythonloopscanleadtoerrorslikeinfiniteloops,modifyingListsDuringteritation,逐個偏置,零indexingissues,andnestedloopineflinefficiencies

forloopsareadvantageousforknowniterations and sequests,供應模擬性和可讀性;而LileLoopSareIdealFordyNamicConcitionSandunknowniterations,提供ControloperRoverTermination.1)forloopsareperfectForeTectForeTerToratingOrtratingRiteratingOrtratingRitterlistlistslists,callings conspass,calplace,cal,ofstrings ofstrings,orstrings,orstrings,orstrings ofcces

pythonisehybridmodeLofCompilation和interpretation:1)thepythoninterpretercompilesourcecececodeintoplatform- interpententbybytecode.2)thepythonvirtualmachine(pvm)thenexecutecutestestestestestesthisbytecode,ballancingEaseofuseEfuseWithPerformance。

pythonisbothinterpretedAndCompiled.1)它的compiledTobyTecodeForportabilityAcrosplatforms.2)bytecodeisthenInterpreted,允許fordingfordforderynamictynamictymictymictymictyandrapiddefupment,儘管Ititmaybeslowerthananeflowerthanancompiledcompiledlanguages。

在您的知識之際,而foroopsareideal insinAdvance中,而WhileLoopSareBetterForsituations則youneedtoloopuntilaconditionismet

ForboopSareSusedwhenthentheneMberofiterationsiskNownInAdvance,而WhileLoopSareSareDestrationsDepportonAcondition.1)ForloopSareIdealForiteratingOverSequencesLikelistSorarrays.2)whileLeleLooleSuitableApeableableableableableableforscenarioscenarioswhereTheLeTheLeTheLeTeLoopContinusunuesuntilaspecificiccificcificCondond


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具