欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python如何讀寫CSV文件

 更新時(shí)間:2020年08月13日 09:15:40   作者:TalkPython  
這篇文章主要介紹了Python如何讀寫CSV文件,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下

CSV文件是一種純文本文件,它使用特定的結(jié)構(gòu)來排列表格數(shù)據(jù)。

CSV文件內(nèi)容看起來應(yīng)該是下面這樣的:

column 1 name,column 2 name, column 3 name
first row data 1,first row data 2,first row data 3
second row data 1,second row data 2,second row data 3
...

每段數(shù)據(jù)是如何用逗號(hào)分隔的。通常,第一行標(biāo)識(shí)每個(gè)數(shù)據(jù)塊——換句話說,數(shù)據(jù)列的名稱。之后的每一行都是實(shí)際數(shù)據(jù),僅受文件大小限制。

CSV文件通常由處理大量數(shù)據(jù)的程序創(chuàng)建。它們是一種從電子表格和數(shù)據(jù)庫導(dǎo)出數(shù)據(jù)以及導(dǎo)入或在其他程序中使用數(shù)據(jù)的方便方法。例如,您可以將數(shù)據(jù)挖掘程序的結(jié)果導(dǎo)出到CSV文件中,然后將其導(dǎo)入到電子表格中,以分析數(shù)據(jù)、為演示生成圖表或準(zhǔn)備發(fā)布報(bào)告。

CSV文件非常容易通過編程處理。任何支持文本文件輸入和字符串操作的語言(如Python)都可以直接使用CSV文件。

讀取CSV文件內(nèi)容

在Python中,使用csv庫來讀取CSV文件內(nèi)容。在讀文件之前,先創(chuàng)建一個(gè)a.csv的文件,內(nèi)容是下面這樣:

名字,部門,月份
John Smith,Accounting,November
Erica Meyers,IT,March

文件創(chuàng)建完成后,開始編寫讀取文件內(nèi)容的程序:

import csv

with open('a.csv') as csv_file:
  csv_reader = csv.reader(csv_file,delimiter=',')
  line_count = 0

  for row in csv_reader:
    if line_count == 0:
      print(f'Column names are {", ".join(row)}')
      line_count += 1
    else:
      print(f'\t{row[0]} works in the {row[1]} department, and was born in {row[2]}.')
      line_count += 1
    print(f'Processed {line_count} lines.')

寫入數(shù)據(jù)到CSV文件

上面編寫了讀取內(nèi)容的程序,下面繼續(xù)編寫一個(gè)寫文件的程序。我們寫到b.csv文件中。

import csv

with open('b.csv', mode='w') as employee_file:
  employee_writer = csv.writer(employee_file, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL)

  employee_writer.writerow(['John Smith', 'Accounting', 'November'])
  employee_writer.writerow(['Erica Meyers', 'IT', 'March'])

如果你感覺使用csv庫讀寫效率比較地下,或者編寫的代碼太多。下面我介紹一種更高效的方法。

用pandas讀csv

假設(shè)我們有一個(gè)c.csv文件,具體內(nèi)容如下:

Name,Hire Date,Salary,Sick Days remaining
Graham Chapman,03/15/14,50000.00,10
John Cleese,06/01/15,65000.00,8
Eric Idle,05/12/14,45000.00,10
Terry Jones,11/01/13,70000.00,3
Terry Gilliam,08/12/14,48000.00,7
Michael Palin,05/23/13,66000.00,8

用pandas讀取csv:

import pandas
df = pandas.read_csv('hrdata.csv')
print(df)

# 輸出的df

#       Name Hire Date  Salary Sick Days remaining
# 0 Graham Chapman 03/15/14 50000.0          10
# 1   John Cleese 06/01/15 65000.0          8
# 2    Eric Idle 05/12/14 45000.0          10
# 3   Terry Jones 11/01/13 70000.0          3
# 4  Terry Gilliam 08/12/14 48000.0          7
# 5  Michael Palin 05/23/13 66000.0          8

用pandas寫csv

讓我們用新的列名將數(shù)據(jù)寫入一個(gè)新的CSV文件:

import pandas
df = pandas.read_csv('hrdata.csv', 
      index_col='Employee', 
      parse_dates=['Hired'],
      header=0, 
      names=['Employee', 'Hired', 'Salary', 'Sick Days'])
df.to_csv('d.csv')

# d.csv文件內(nèi)容

# Employee,Hired,Salary,Sick Days
# Graham Chapman,2014-03-15,50000.0,10
# John Cleese,2015-06-01,65000.0,8
# Eric Idle,2014-05-12,45000.0,10
# Terry Jones,2013-11-01,70000.0,3
# Terry Gilliam,2014-08-12,48000.0,7
# Michael Palin,2013-05-23,66000.0,8

如果你了解讀取CSV文件的基礎(chǔ)知識(shí),那么當(dāng)您需要處理導(dǎo)入數(shù)據(jù)時(shí),就不會(huì)手足無措?;镜腃SV Python庫可以輕松地處理大多數(shù)CSV讀取、處理和編寫任務(wù)。如果你有很多數(shù)據(jù)要讀取和處理,panda庫還提供了快速和簡單的CSV處理功能。

以上就是Python如何讀寫CSV文件的詳細(xì)內(nèi)容,更多關(guān)于Python讀寫CSV文件的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • CentOS 7下安裝Python3.6 及遇到的問題小結(jié)

    CentOS 7下安裝Python3.6 及遇到的問題小結(jié)

    這篇文章主要介紹了CentOS 7下安裝Python3.6 及遇到的問題小結(jié),需要的朋友可以參考下
    2018-11-11
  • Python爬取數(shù)據(jù)保存為Json格式的代碼示例

    Python爬取數(shù)據(jù)保存為Json格式的代碼示例

    今天小編就為大家分享一篇關(guān)于Python爬取數(shù)據(jù)保存為Json格式的代碼示例,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-04-04
  • 一文帶你了解Python中的注釋及變量

    一文帶你了解Python中的注釋及變量

    這篇文章主要給大家介紹了關(guān)于Python中注釋及變量的相關(guān)資料,Python是一門動(dòng)態(tài)類型的語言,因此無須提前聲明變量類型,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-07-07
  • 使用PySpider進(jìn)行IP代理爬蟲的技巧與實(shí)踐分享

    使用PySpider進(jìn)行IP代理爬蟲的技巧與實(shí)踐分享

    PySpider是一個(gè)基于Python的強(qiáng)大的開源網(wǎng)絡(luò)爬蟲框架,它使用簡單、靈活,并且具有良好的擴(kuò)展性,本文將介紹如何使用PySpider進(jìn)行IP代理爬蟲,并提供一些技巧和實(shí)踐經(jīng)驗(yàn),文中有詳細(xì)的代碼示例供大家參考,需要的朋友可以參考下
    2024-03-03
  • Python 一篇文章看懂時(shí)間日期對(duì)象

    Python 一篇文章看懂時(shí)間日期對(duì)象

    學(xué)習(xí)每一門語言多多少少會(huì)用到與時(shí)間相關(guān)的東西,咱們今天呢就談一談Python中的時(shí)間與日期對(duì)象。在Python中時(shí)間對(duì)象一般可以用來測(cè)量效率。日期對(duì)象用來處理日期與字符串之間的關(guān)系
    2022-03-03
  • Python中PyQt5/PySide2的按鈕控件使用實(shí)例

    Python中PyQt5/PySide2的按鈕控件使用實(shí)例

    這篇文章主要介紹了PyQt5/PySide2的按鈕控件使用實(shí)例,代碼簡單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-08-08
  • Pytest中skip skipif跳過用例詳解

    Pytest中skip skipif跳過用例詳解

    今天給大家?guī)淼氖顷P(guān)于Python的相關(guān)知識(shí),文章圍繞著Pytest中skip skipif跳過用例展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • Python實(shí)現(xiàn)對(duì)照片中的人臉進(jìn)行顏值預(yù)測(cè)

    Python實(shí)現(xiàn)對(duì)照片中的人臉進(jìn)行顏值預(yù)測(cè)

    今天給大家?guī)淼氖顷P(guān)于Python實(shí)戰(zhàn)的相關(guān)知識(shí),文章圍繞如何用Python實(shí)現(xiàn)對(duì)照片中的人臉進(jìn)行顏值預(yù)測(cè)展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • python語言基本語句用法總結(jié)

    python語言基本語句用法總結(jié)

    在本篇文章里小編給大家整理了關(guān)于python語言基本語句的相關(guān)知識(shí)點(diǎn)以及實(shí)例代碼,需要的朋友們參考下。
    2019-06-06
  • 已解決不小心卸載pip后怎么處理(重新安裝pip的兩種方式)

    已解決不小心卸載pip后怎么處理(重新安裝pip的兩種方式)

    這篇文章主要介紹了已解決不小心卸載pip后怎么處理(重新安裝pip的兩種方式),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-04-04

最新評(píng)論