python 處理 csv 文件

2021-03-01 Python之禪

csv 文件是一種逗號分隔的純文本形式存儲的表格數據,Python內置了CSV模塊,可直接通過該模塊實現csv文件的讀寫操作,在web應用中導出數據是比較常見操作。

這篇文章介紹csv模塊的基本用法

寫操作

writer.writerow, 將多列數據寫入一行

import csv

with open('some.csv', 'w', newline='') as f: 
    writer = csv.writer(f)
    writer.writerow(["123", "234", "345"])
    writer.writerow(["abc", "efg", "hij"])

如果以文本文件的方式打開,每行數據之間都是用逗號隔開的文本字符串

寫入時,必須指定 newline=』』, 否則每插入一行就有一個空行

讀操作

with open('some.csv', 'r', newline="") as f: 
    reader = csv.reader(f)
    for row in reader:
        print(row)


輸出

['123', '234', '345']
['abc', 'efg', 'hij']

DictWriter & DictReader

csv.DictWriter 對象引入了一個fieldnames參數, fieldnames是csv文件中的表頭,就是第一行中的數據

with open("person.csv", 'w', newline='') as f:
    fieldnames = ["name", "age", "sex"]
    writer = csv.DictWriter(f, fieldnames=fieldnames)
    writer.writeheader()
    writer.writerow({"name": "zhangsan", "age": 10, "sex": "male"})
    writer.writerow({"name": "lis", "age": 20, "sex": "male"})


with open('person.csv', 'r') as f:
    reader = csv.DictReader(f)
    for row in reader:
        print(row)

每行輸出的是一個字典對象

OrderedDict([('name', 'zhangsan'), ('age', '10'), ('sex', 'male')])
OrderedDict([('name', 'lis'), ('age', '20'), ('sex', 'male')])

默認情況下導出的字符串全是數字時,在excel中打開時會被自動轉換成科學計數格式

import csv

field_order = ["會診單號"]
with open("導出.csv", 'w', encoding="utf8", newline="") as csvfile:
    writer = csv.DictWriter(csvfile, field_order)
    writer.writeheader()
    writer.writerow({"會診單號": "20210217162737860175"})

只需要在字符串後面加轉義字符』\t』即可變成字符串

import csv

field_order = ["會診單號"]
with open("導出.csv", 'w', encoding="utf8", newline="") as csvfile:
    writer = csv.DictWriter(csvfile, field_order)
    writer.writeheader()
    writer.writerow({"會診單號": "20210217162737860175"+'\t'})

相關焦點

  • Python處理CSV文件
    在數據處理過程中,可能會需要採用篩選、提取、重新生成等方法來對數據進行處理,下面以csv文件為例,介紹使用Python處理文本文件的方法。開始之前在面對文件讀寫類的問題時,open函數是一定繞不開的,下面先介紹幾種open函數使用的技巧。
  • Python對CSV文件的處理
    在Python中,讀取csv文件使用到的標準庫是csv,直接導入就可以了,要讀取的CSV文件內容為:見讀取CSV文件裡面內容的源碼:#!/usr/bin/env python #-*-coding:utf-8-*-#author:wuyaimport  csvdef readCsv(): with open('csvTest.csv','r') as f: rander=csv.reader(f) #對數據循環獲取
  • CSV文件在Python中的幾種處理方式
    for row in fr:    row = row.strip()    row_list = row.split(",")    fw.write(",".join(map(str, header_list)) + "\n")以上步驟完成後,在命令提示符中輸入:python csvrw.py
  • python讀寫csv文件
    文件讀寫的經典操作方式如下,通過內置的open函讀取到每行內容,按照指定的分隔符進行分隔,然後對每一列的內容進行處理。
  • Python讀寫csv文件專題教程(2)
    ,默認為c, 因為c引擎解析速度更快,但是特性沒有python引擎高,如果使用c引擎沒有的特性時,會自動退化為python引擎。skiprows還可以被賦值為某種過濾規則的函數skip_footer從文件末尾過濾行,解析器退化為python. 這是因為c解析器沒有這個特性。
  • Python 處理 csv 文件
    csv 文件是一種逗號分隔的純文本形式存儲的表格數據,Python內置了CSV模塊,可直接通過該模塊實現csv文件的讀寫操作,在web應用中導出數據是比較常見操作。這篇文章介紹csv模塊的基本用法寫操作writer.writerow, 將多列數據寫入一行import csvwith open('some.csv', 'w', newline='') as f:     writer = csv.writer(f)    writer.writerow(["123", "234", "
  • 軟體應用 | Python實現CSV文件的合併與拆分
    團隊當前的主要目標是挖掘行政、經濟與社會大數據資源在經濟學學術、智庫與相關行業研究領域中的應用價值,以學術研究為標準開展大數據治理研究,努力探索大數據分析技術融入中國經濟社會研究的可行進路。 Part1引言CSV(逗號分隔值文件格式,有時也稱為字符分隔值,因為分隔字符也可以不是逗號)是一種通用的、相對簡單的文件格式,被用戶、商業和科學廣泛應用。
  • Python讀取csv文件常見的兩種方法
    一、數據存取之csv(一)什麼是csvCSV是一種通用的、相對簡單的文件格式,被用戶、商業和科學廣泛應用。最廣泛的應用是在程序之間轉移表格數據,而這些程序本身是在不兼容的格式上進行操作的(往往是私有的和/或無規範的格式)。
  • Python讀寫csv文件專題教程(1)
    1 前言Python的數據分析包Pandas具備讀寫csv文件的功能,read_csv 實現讀入csv文件,to_csv寫入到csv文件。
  • python pandas解決csv文件中的部分注釋問題
    由於通過添加注釋,文件通常可以更加清晰明了。csv文件中有注釋,這種情況是可能存在的。
  • Python讀入文件報錯的處理方法
    文章導讀:本文主要 解決python在讀入文件時的報錯:ParserError:Error tokenizing data.C error:Expected x fields in line nnn,saw y。文章分為兩部分,第一部分解釋報錯的意思,定位原因;第二部分給出解決方法。
  • python筆記5-python2寫csv文件中文亂碼問題
    對中文編碼糾結的建議儘快換python3吧,python2且用且珍惜!一、csv中文亂碼1.open打開csv文件,用writer寫入帶有中文的數據時- writer寫入單行- writers寫入多行```# coding:utf-8import csvf = open("xieru.csv", 'wb')writer =
  • 批量轉化xlsx文件為csv格式
    寫在前面python對於文件流工作做的比R包,這是我目前的感受,今天給大家貢獻一個小函數,這是趙向陽師弟編寫的,我們在處理xlsx文件過程中需要將
  • 十分鐘學會如何用Python處理CSV文件
    今天,作者就來總結一下使用Python處理物聯網行業中一種常見的文件格式:csv文件。Python中集成了專用於處理csv文件的庫,名為:csv。csv 庫中有4個常用的對象:csv.reader:以列表的形式返回讀取的數據。csv.writer:以列表的形式寫入數據。
  • python學習筆記(6):csv文件讀取
    昨天發了篇文章,是講如何讀取.xls格式文件的,今天來說下CSV文件怎麼讀取。我個人用CSV還是比較多的,因為讀取起來比較方便。小試牛刀「示例文件」「來個簡單式的」讀取csv文件,用的是csv.reader()這個方法。
  • csv文件讀寫操作 | pyhton內置csv模塊
    python也內置了csv模塊,用來操作csv文件。一、csv模塊寫入數據writer(csvfile,dialect=『excel』,**fmtparams)csvfile:文件對象dialect:編碼風格,默認為是excel,也就是用逗號(,)分隔,一般不去更改它。
  • python學習筆記 - 讀寫CSV文件
    python三方庫提供了csv庫,我們需要通過這個庫,來實現對CSV文件的讀與寫。所以我們在應用csv庫之前,需要提前安裝它。2、讀取CSV文件2.1、實例化CSV文件讀取類(DictReader)csv模塊下提供了DictReader類,它可以將普通的文本文檔讀取對象轉化為csv文檔讀取對象。
  • Python 數據處理(十三)—— IO 工具之 CSV
    Python 數據處理(十三)—— IO 工具前言前面我們介紹了 pandas 的基礎語法操作,下面我們開始介紹 pandas 的數據讀寫操作。下面列出了所有的 reader 和 writer 函數注意:後面會用到 StringIO,請確保導入# python3from io import StringIO# python2from StringIO
  • glob - 被忽略的python超強文件批量處理模塊
    Python-glob模塊簡介glob模塊通配符glob模塊是python自己帶的一個文件操作模塊,可以查找符合自己需求的的文件,並且支持通配符操作,主要包括以下三種匹配模式:**匹配所有文件,包括目錄,子目錄和子目錄裡面的文件。
  • [乾貨分享】用Python讀取CSV文件的幾種方式
    有時候數據是以csv形式存儲的,要處理數據我們需要先進行讀取操作。這裡我總結了幾種csv的讀取方法(基於python)。2.利用pandas讀取import pandas as pddata = pd.read_csv(r'C:\Users\lenovo\Desktop\parttest.csv',sep=',',header='infer',usecols=[5])同樣地,sep相當於上面的delimiter,是分隔符。