天天看點

如何将csv檔案或txt檔案轉換為excel表格檔案?

作者:白領服務工作室

将csv檔案或txt檔案轉為表格excel檔案,使用Python其實是比較簡單的,隻需要編寫1個簡單的函數即可。詳細介紹如下:

一、前提條件

必須是标準的csv檔案格式,即逗号分隔值檔案格式csv檔案。

如果是txt檔案,檔案中每行内的值也必須是以英文逗号分隔開的。

如下所示的:

如何将csv檔案或txt檔案轉換為excel表格檔案?

csv檔案

如何将csv檔案或txt檔案轉換為excel表格檔案?

逗号分隔值的txt檔案

我們看到不論是csv檔案還是txt檔案,每行内的值都必須是英文狀态下的逗号進行分隔的。

如果不是英文逗号,而是中文逗号分隔值呢,下面編寫的代碼會導緻無法準确轉為表格檔案的。類似地,如果tab鍵分隔值、其它符号分隔值,都是無法準确轉為表格檔案的。

是以,要使用下面的代碼轉換csv檔案或txt檔案,務必確定檔案中的分隔符是英文狀态下的逗号。

二、具體轉換的代碼

import openpyxl #導入表格子產品

import csv #導入csv子產品

#以下定義一個函數,該函數的功能是轉為csv檔案為表格檔案。

def csv_to_excel(csv_file,excel_file): #2個參數分别是檔案完整路徑,這裡csv_file可以是字尾為.txt的檔案

csv_data = []

with open(csv_file) as f: #打開csv檔案或txt檔案

for row in csv.reader(f): #讀取檔案中的每行

csv_data.append(row) #将讀取的每行内容儲存為清單的每個元素

wb = openpyxl.Workbook() #建立工作薄檔案

sheet = wb.active #擷取目前的工作表

for row in csv_data: #讀取每個元素,即csv的每行

sheet.append(row) #在工作表中添加每行

wb.save(excel_file) #儲存生成的工作簿檔案

#下面是調用定義的函數,執行具體的轉換任務。

csv_to_excel('e:/1.txt','e:/new.xlsx') #将e盤下的1.txt檔案,轉換為new.xlsx表格

print('完成') #執行完成後,提示執行結束!

三、在python的IDLE中代碼如下圖所示

如何将csv檔案或txt檔案轉換為excel表格檔案?

在上面代碼處于目前狀态時,按下f5或者點選菜單欄中的run下面的按鈕,即可執行上述的代碼。

同樣,修改倒數第2行中的2個參數,即可轉換本地csv檔案或txt檔案。

四、有沒有必要将csv檔案轉為excel檔案

如果csv檔案資料量超過10萬行,不建議轉為excel,因為在excel中的行數太大時,一是表格反應速度會變慢,有時讓人無法接受,二是在進行資料處理時容易出錯。對于大資料量的情況,使用python直接讀取csv檔案并進行分析,會更加友善簡單高效。

如果csv檔案資料量較少,可以根據需要,決定是否轉為excel檔案。

繼續閱讀