n種方式教你用python讀寫excel等數據文件

2021-03-02 濤哥聊Python

點擊上方「濤哥聊Python」,選擇「星標」公眾號

重磅乾貨,第一時間送達

來源:Python大數據分析

python處理數據文件的途徑有很多種,可以操作的文件類型主要包括文本文件(csv、txt、json等)、excel文件、資料庫文件、api等其他數據文件。

下面整理下python有哪些方式可以讀寫數據文件。

1. read、readline、readlinesread()  :一次性讀取整個文件內容。推薦使用read(size)方法,size越大運行時間越長readline()  :每次讀取一行內容。內存不夠時使用,一般不太用readlines()   :一次性讀取整個文件內容,並按行返回到list,方便我們遍歷

具體用法可見:一文搞懂python文件讀寫

2. 內置模塊csv

python內置了csv模塊用於讀寫csv文件,csv是一種逗號分隔符文件,是數據科學中最常見的數據存儲格式之一。csv模塊能輕鬆完成各種體量數據的讀寫操作,當然大數據量需要代碼層面的優化。

# 讀取csv文件
import csv
with open('test.csv','r') as myFile:
lines=csv.reader(myFile)
for line in lines:
print (line)

import csv
with open('test.csv','w+') as myFile:
myWriter=csv.writer(myFile)
# writerrow一行一行寫入
myWriter.writerow([7,8,9])
myWriter.writerow([8,'h','f'])
# writerow多行寫入
myList=[[1,2,3],[4,5,6]]
myWriter.writerows(myList)


3. numpy庫

loadtxt用來讀取文本文件(包含txt、csv等)以及.gz 或.bz2格式壓縮文件,前提是文件數據每一行必須要有數量相同的值。

import numpy as np
# loadtxt()中的dtype參數默認設置為float
# 這裡設置為str字符串便於顯示
np.loadtxt('test.csv',dtype=str)
# out:array(['1,2,3', '4,5,6', '7,8,9'], dtype='<U5')

load用來讀取numpy專用的.npy, .npz 或者pickled持久化文件。

import numpy as np
# 先生成npy文件
np.save('test.npy', np.array([[1, 2, 3], [4, 5, 6]]))
# 使用load加載npy文件
np.load('test.npy')
'''
out:array([[1, 2, 3],
[4, 5, 6]])
'''

fromfile方法可以讀取簡單的文本數據或二進位數據,數據來源於tofile方法保存的二進位數據。讀取數據時需要用戶指定元素類型,並對數組的形狀進行適當的修改。

import numpy as np
x = np.arange(9).reshape(3,3)
x.tofile('test.bin')
np.fromfile('test.bin',dtype=np.int)
# out:array([0, 1, 2, 3, 4, 5, 6, 7, 8])


4. pandas庫

pandas是數據處理最常用的分析庫之一,可以讀取各種各樣格式的數據文件,一般輸出dataframe格式。如:txt、csv、excel、json、剪切板、資料庫、html、hdf、parquet、pickled文件、sas、stata等等

read_csv方法read_csv方法用來讀取csv格式文件,輸出dataframe格式。
import pandas as pd
pd.read_csv('test.csv')

讀取excel文件,包括xlsx、xls、xlsm格式

import pandas as pd
pd.read_excel('test.xlsx')

通過對sep參數(分隔符)的控制來對任何文本文件讀取

讀取json格式文件

df = pd.DataFrame([['a', 'b'], ['c', 'd']],index=['row 1', 'row 2'],columns=['col 1', 'col 2'])
j = df.to_json(orient='split')
pd.read_json(j,orient='split')

讀取html表格

讀取剪切板內容

讀取plckled持久化文件

讀取資料庫數據,連接好資料庫後,傳入sql語句即可

讀取hdf5文件,適合大文件讀取

讀取parquet文件

讀取sas文件

讀取stata文件

讀取google bigquery數據

pandas學習網站:https://pandas.pydata.org/

5、讀寫excel文件

python用於讀寫excel文件的庫有很多,除了前面提到的pandas,還有xlrd、xlwt、openpyxl、xlwings等等。

主要模塊:

從excel中讀取數據,支持xls、xlsx

對excel進行修改操作,不支持對xlsx格式的修改

在xlw和xlrd中,對一個已存在的文件進行修改

主要針對xlsx格式的excel進行讀取和編輯

對xlsx、xls、xlsm格式文件進行讀寫、格式修改等操作

用來生成excel表格,插入數據、插入圖標等表格操作,不支持讀取

需安裝pywin32,直接與Excel進程通信,可以做任何在Excel裡可以做的事情,但比較慢

6. 操作資料庫

python幾乎支持對所有資料庫的交互,連接資料庫後,可以使用sql語句進行增刪改查。

主要模塊:

用於和mysql資料庫的交互

用於和mysql資料庫的交互

用於和oracle資料庫的交互

內置庫,用於和sqlite資料庫的交互

用於和sql server資料庫的交互

用於和mongodb非關係型資料庫的交互

用於和redis非關係型資料庫的交互

使用參考地址:https://blog.csdn.net/a87b01c14/article/details/51546727

五分鐘讀懂TCP 協議

plotly | python可視化進階之路

相關焦點

  • n種方式教你用Python讀寫Excel等數據文件
    下面整理下python有哪些方式可以讀寫數據文件。1. read、readline、readlinesread()  :一次性讀取整個文件內容。推薦使用read(size)方法,size越大運行時間越長readline()  :每次讀取一行內容。
  • python讀寫文件
    今天我們就以這幾個需求為背景來看看python是如何讀寫文件的。基本概念介紹我們知道python中一切都是對象,「文件」也不例外。下面的實驗可以看出文件是名叫『_io.TextIOWrapper』的class。
  • Python讀寫Excel表格,就是這麼簡單粗暴又好用
    最近在做一些數據處理和計算的工作,因為數據是以.csv格式保存的,因此剛開始直接用Excel來處理。但是做著做著發現重複的勞動其實並沒有多大的意義,於是就想著寫個小工具幫著處理。以前正好在一本書上看到過使用Python來處理Excel表格,可惜沒有仔細看。於是我到處查找資料,基本解決了日常所需,終於算是完成了任務,因此撰寫此文就算是總結吧,主要記錄使用過程的常見問題及解決。
  • 14-用Python 讀寫 Excel 文件
    最大支持行數為1048576行),人們開始轉向python和R這樣的分析工具了XlsxWriterxlrd&xlwt[2]OpenPyXL[3]Microsoft Excel API[4]介紹可以創建 Excel 2007 或更高版本的 XLSX 文件即 python-excel,含 xlrd、xlwt 和 xlutils 三大模塊,分別提供讀、寫和其他功能可以讀寫 Excel
  • Python使用xlrd和xlwt讀寫Excel的簡單用法
    因此用Python 進行數據相關的工作時,難免要和 Excel 打交道。標準的 Excel 文件(xls/xlsx)具有較複雜的格式,並不方便像普通文本文件一樣直接進行讀寫,需要藉助第三方庫來實現。常用的庫是 python-excel 系列:xlrd、xlwt、xlutils它們有個缺陷,就是只能處理 xls 文件。如果你想用新版本的 xlsx,可以考慮 openpyxl 和 xlsxwriter。
  • 使用pandas進行文件讀寫
    pandas支持讀取非常多類型的文件,示意如下對於文本文件,支持csv, json等格式,當然也支持tsv文本文件;對於二進位文件,支持excel,python序列化文件,hdf5等格式;此外,還支持SQL資料庫文件的讀寫。在日常開發中,最經典的使用場景就是處理csv,tsv文本文件和excel文件了。
  • Python讀寫Excel表格,就是這麼簡單粗暴又好用(文末送書)
    來源 | 戀習Python(ID:sldata2017)最近在做一些數據處理和計算的工作,因為數據是以.csv格式保存的,因此剛開始直接用Excel來處理。但是做著做著發現重複的勞動其實並沒有多大的意義,於是就想著寫個小工具幫著處理。以前正好在一本書上看到過使用Python來處理Excel表格,可惜沒有仔細看。
  • 詳解Python操作Excel文件
    前言本篇文章主要總結了一下利用python操作Excel文件的第三方庫和方法。常見庫簡介1.xlrdxlrd是一個從Excel文件讀取數據和格式化信息的庫,支持.xls以及.xlsx文件。寫入大.xlsx文件時使用內存優化模式。7.win32comwin32com庫存在於pywin32中,是一個讀寫和處理Excel文件的庫。地址:http://pythonexcels.com/python-excel-mini-cookbook/8.DataNitroDataNitro是一個內嵌在Excel中的插件。
  • Python利用openpyxl處理excel文件(openpyxl的安裝及簡介)
    作為一名苦逼的文員,經常同word、excel、ppt打交道,有些工作,比如事務性的,敲幾個文字,做幾個圖表,一般人都應該沒有啥問題,很輕鬆就會搞定。但是在同excel打交道過程中,你會面對一系列公式、紛繁的統計和複雜數據分析,比如這個公式:=IFERROR(TRIM(IF(LEN(VLOOKUP(F7,Sheet3!
  • Python讀寫文件open的使用解讀
    文件打開 open()和操作方法python 讀取文件自帶方法 open,適用於可以用記事本 txt 格式打開的文件,都可以用 open 方法打開2   python 打開文件>兩種方式的區別是第一種打開方式需要跟上 close()方法關閉文件,第二種打開方式不需要跟上 close()方法關閉文件,文件可以安全退出
  • 基於Python實現對各種數據文件的操作
    本文總結使用Python對常見的數據文件進行讀寫操作
  • 黑馬程式設計師:程式設計師必看:如何用Python實現Excel讀寫與處理!
    本篇文章講的是Excel文件的讀寫和處理。Excel除了是普通生活中應用廣泛的數據處理軟體和數據保存格式外,在商業分析中也佔有非常大的重量,熟練使用Excel軟體是數據分析師很關鍵的技能點,但這篇筆記不是講各類Excel函數和快捷鍵,而是講Python對Excel的 .xls 和 .xlsx 格式數據的讀寫和處理。
  • C語言操作EXCEL文件(讀寫)
    操作十分複雜,當然我也對這種方法進行了嘗試,也實現了功能,這種方法實現的功能比較多,一般我們只是進行簡單的讀寫操作,所以並不是很想使用這種方法。下面通過C語言讀寫程序來實現。如果要給它的下一個同行單元格(第1行第2列)寫數據,使用"\t" ;如果要給它的下一個同列單元格(第2行第1列)寫數據,使用"\n" 。
  • python文件讀寫的基本操作
    保存數據在生活中也是非常常見的,比如你的微信,QQ帳號密碼就是保存在一個固定的地方的,每次登錄時就會通過比較對錯,來判斷是否可以登錄。創建一個文件使用電腦創建一個文件非常簡單,滑鼠右鍵新建就可以搞定,用程序創建也非常簡單,下面一行代碼就搞定。
  • python+xlrd+xlwt操作excel
    則先運行python ez_setup.py之後在重複上面的步驟PS:office的版本不要用太高的,建議最好用03版本的,且後綴為xls的源碼bug修復安裝好xlwt3後,找到formula.py文件,將其中的__slots__ = ["__init__", "__s", "__parser
  • 氣象編程 | 使用python操作Excel文件
    python操作Excel的庫有很多,大概有xlrd、xlwt、openpyxl、XlsxWriter、xlutils、pandas等。這些庫的操作對xls和xlsx的支持不同,有個只可以操作xls,有的只可以進行讀操作。我選用的庫是openpyxl,支持對xlsx的讀寫操作。
  • 怎樣用python讀寫h5文件
    H5文件全稱是Hierarchical Data Format,可以存儲不同類型的圖像和數碼數據的文件格式,是一種常用的數據存儲格式。python中用於讀寫H5文件的包是h5py。下面簡要介紹其操作:讀取:import h5pypath = 'Data/irt_PROSIT.hdf5' # 這裡是h5文件的存儲路徑f = h5py.File(path, 'r')查看該文件包含的那些數據
  • Python讀取CSV和Excel
    CSV逗號分隔值(Comma-Separated Values,CSV,有時也稱為字符分隔值,因為分隔字符也可以不是逗號),其文件以純文本形式存儲表格數據(數字和文本)。純文本意味著該文件是一個字符序列,不含必須像二進位數字那樣被解讀的數據。
  • python使用with as處理文件的讀寫
    文件處理的兩種情況:1、忘記關閉文件。2、文件讀寫異常,未做處理。在python中使用with語句,可以自動調用close()方法,同時也解決了異常問題。with open('test.txt','w') as f:f.write('Hello, python!')
  • 巧用python win32com模塊操作excel文件
    Python操作excel文件的第三方庫有很多,小爬就常用openPyxl庫來操作已有的excel文件,它對xlsx、xlsm等格式的支持都較好