1. 程式人生 > >Python之xlsx文件與csv文件相互轉換

Python之xlsx文件與csv文件相互轉換

shee 單元格 pre tab 轉換 寫入 strong main work

1 xlsx文件轉csv文件

import xlrd
import csv
 
def xlsx_to_csv():
    workbook = xlrd.open_workbook(‘1.xlsx‘)
    table = workbook.sheet_by_index(0)
    with codecs.open(‘1.csv‘, ‘w‘, encoding=‘utf-8‘) as f:
        write = csv.writer(f)
        for row_num in range(table.nrows):
            row_value 
= table.row_values(row_num) write.writerow(row_value) if __name__ == ‘__main__‘: xlsx_to_csv()

2 使用第三方庫pandas將xlsx文件轉csv文件

import pandas as pd
 
 
def xlsx_to_csv_pd():
    data_xls = pd.read_excel(‘1.xlsx‘, index_col=0)
    data_xls.to_csv(‘1.csv‘, encoding=‘utf-8‘)
 
 
if __name__ == ‘__main__‘: xlsx_to_csv_pd()

3 csv文件轉換成xlsx文件

import csv
import xlwt
 
def csv_to_xlsx():
    with open(‘1.csv‘, ‘r‘, encoding=‘utf-8‘) as f:
        read = csv.reader(f)
        workbook = xlwt.Workbook()
        sheet = workbook.add_sheet(‘data‘)  # 創建一個sheet表格
        l 
= 0 for line in read: print(line) r = 0 for i in line: print(i) sheet.write(l, r, i) # 一個一個將單元格數據寫入 r = r + 1 l = l + 1 workbook.save(‘1.xlsx‘) # 保存Excel if __name__ == ‘__main__‘: csv_to_xlsx()

4 使用pandas將csv文件轉成xlsx文件

import pandas as pd
 
def csv_to_xlsx_pd():
    csv = pd.read_csv(‘1.csv‘, encoding=‘utf-8‘)
    csv.to_excel(‘1.xlsx‘, sheet_name=‘data‘)
 
 
if __name__ == ‘__main__‘:
    csv_to_xlsx_pd()

Python之xlsx文件與csv文件相互轉換