tft每日頭條

 > 科技

 > python如何打開csv數據

python如何打開csv數據

科技 更新时间:2024-11-27 00:44:57

Comma Separated Values,簡稱csv,它是一種以逗号分隔數值的文件類型。在數據庫或電子表格中,它是最常見的導入導出格式,它以一種簡單而明了的方式存儲和共享數據,CSV文件通常以純文本的方式存儲數據表。今天,我将給大家分享在Python中如何操作CSV文件。

一、數據源

首先,我們來看看本次操作的數據源,圖1 CSV文件是在Excel中打開的,圖2 CSV文件是在Notepad 中打開的,我們在圖2中可以看到數值之間是以逗号隔開的,每行末尾是CR(回車符)和LF(換行符)(請注意,Linux系統以LF結尾,MacOS系統以CR結尾)。

python如何打開csv數據(CSV文件在Python中的幾種處理方式)1

圖1

python如何打開csv數據(CSV文件在Python中的幾種處理方式)2

圖2

二、使用Python基本語法讀寫CSV文件

使用基本語法讀取CSV文件中的數據大概思路是:獲取文件對象;讀取表頭;按逗号分隔符拆分表頭字段;使用for循環遍曆表中記錄數據,拆分後再次寫入另一張CSV文件中。詳細步驟和代碼如下所示:

Step 1:導入必要模塊,獲取輸入輸出文件路徑名。

import sys infile = sys.argv[1] outfile = sys.argv[2]

Step 2:使用open内置函數獲取文件對象。

with open(infile, "r", newline='') as fr, open(outfile, "w", newline='') as fw:

Step 3:使用文件對象的readline方法或者叠代器的next方法讀取表頭(文件對象是一個叠代器對象,支持叠代協議),使用str.split方法對表頭進行拆分(注意,要使用strip函數去掉尾部換行符)。

header = next(fr) header = header.strip() header_list = header.split(",")

Step 4:表頭拆分好後,我們需要将表頭寫入文件對象中(注意尾部需要添加一個換行符哦)。

fw.write(",".join(map(str, header_list)) "\n")

當然,上面的代碼也可以這麼寫:

print(*header_list, sep=",", file=fw)

Step 5:使用for循環遍曆表體數據,并将其拆分成列表寫入到另一個文件中。

for row in fr: row = row.strip() row_list = row.split(",") fw.write(",".join(map(str, header_list)) "\n")

以上步驟完成後,将代碼保存為csvrw.py,然後在命令提示符中輸入:

python csvrw.py inputfile.csv outputfile.csv

輸入輸出csv文件名稱以及腳本名稱請自定義,以上隻是舉例說明。

以上代碼如下:

python如何打開csv數據(CSV文件在Python中的幾種處理方式)3

三、使用csv模塊讀寫CSV文件

csv模塊是Python内置的一個模塊,它考慮了csv文件中的各種複雜情況,平時處理csv文件基本上使用此模塊,下面來看看該模塊處理csv文件的方式,步驟如下:

Step 1:首先,導入必要模塊,獲取輸入輸出文件路徑名。

import sys import csv infile = sys.argv[1] outfile = sys.argv[2]

Step 2:使用open函數獲取文件對象。

with open(infile, "r", newline='') as incsv, open(outfile, "w", newline='') as outcsv:

Step 3:使用csv模塊中的reader和writer函數分别獲取reader和writer對象。

freader = csv.reader(incsv, delimiter=",") fwriter = csv.writer(outcsv, delimiter=",")

Step 4:使用for循環語句讀取和寫入數據。

for rowlist in freader: fwriter.writerow(rowlist)

以上步驟完成後,在命令提示符中輸入相應命令即可(請參照示例<二>)

代碼如下:

python如何打開csv數據(CSV文件在Python中的幾種處理方式)4

四、使用pandas讀寫CSV文件

pandas庫是一個強大的數據處理和分析庫,使用pandas處理csv文件更簡單(請注意,pandas非内置庫,需要另行安裝),步驟如下:

Step 1:首先,導入必要模塊,獲取輸入輸出文件路徑名。

import sys import pandas as pd infile = sys.argv[1] outfile = sys.argv[2]

Step 2:使用pandas的read_csv方法将數據存儲到一個DataFrame對象中。

dataframe = pd.read_csv(infile)

Step 3:然後使用DataFrame的to_csv方法将其輸出到另一張csv表中。

dataframe.to_csv(outfile, index=False)

以上步驟完成後,在命令提示符中輸入相應命令即可(請參照<二>)

代碼如下:

python如何打開csv數據(CSV文件在Python中的幾種處理方式)5

OK,以上内容就是Python處理CSV文件的3種方式,内容比較簡單,感謝您的觀看!

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved