ホームページ  >  記事  >  バックエンド開発  >  PythonでExcelファイルを読み書きする方法

PythonでExcelファイルを読み書きする方法

尚
オリジナル
2019-07-03 13:07:4342032ブラウズ

PythonでExcelファイルを読み書きする方法

Python で Excel を読み書きする方法はたくさんありますが、モジュールごとに読み書き方法が若干異なります。

Excel の読み書きには xlrd と xlwt を使用します。

Use openpyxl to read and write Excel;

Use pandas to read and write Excel;

デモンストレーションの便宜上、ここで新しい data.xlsx ファイルを作成しました。最初のワークシート シート 1 領域「A1:F5」の内容は次のとおりで、Excel を読み取るためのコードをテストするために使用されます。

PythonでExcelファイルを読み書きする方法

1. xlrd と xlwt を使用して読み取り、 Excel の書き込み (xlwt は xlsx をサポートしません)

最初に、サードパーティ モジュール xlrd および xlwt をインストールします。次のように、コマンド「pip install xlrd」および「pip install xlwt」を直接入力するだけです (cmd →CD→c:pythonscripts):

PythonでExcelファイルを読み書きする方法

1.xlrd は Excel を読み取ります:

import xlrd
book = xlrd.open_workbook('data.xlsx')
sheet1 = book.sheets()[0]
nrows = sheet1.nrows
print('表格总行数',nrows)
ncols = sheet1.ncols
print('表格总列数',ncols)
row3_values = sheet1.row_values(2)
print('第3行值',row3_values)
col3_values = sheet1.col_values(2)
print('第3列值',col3_values)
cell_3_3 = sheet1.cell(2,2).value
print('第3行第3列的单元格的值:',cell_3_3)

実行結果:

表格总行数 5
表格总列数 5
第3行值 ['3A', '3B', '3C', '3D', '3F']
第3列值 ['1C', '2C', '3C', '4C', '5C']
第3行第3列的单元格的值: 3C

2 .xlwt writes Excel

メイン コードは次のとおりです:

workbook = xlwt.Workbook()
worksheet = workbook.add_sheet('test')
worksheet.write(0,0,'A1data')
workbook.save('excelwrite.xls')

プログラムの実行後、新しい Excelwrite.xls ワークブックを作成し、テキスト ワークシートを挿入します。A1 のコンテンツは A1data です。

2. Excel の読み取りと書き込みには、openpyxl を使用します。これは Excel の xlsx タイプのみであることに注意してください。

これをインストールする場合は、「pip install openpyxl」コマンドを入力するだけです。直接インストールすると、すぐにインストールが完了します。

Excel の読み取り:

import openpyxl
workbook = openpyxl.load_workbook('data.xlsx')
worksheet = workbook.get_sheet_by_name('Sheet1')
row3=[item.value for item in list(worksheet.rows)[2]]
print('第3行值',row3)
col3=[item.value for item in list(worksheet.columns)[2]]
print('第3行值',col3)
cell_2_3=worksheet.cell(row=2,column=3).value
print('第2行第3列值',cell_2_3)
max_row=worksheet.max_row
print('最大行',max_row)

実行結果:

第3行值 ['3A', '3B', '3C', '3D', '3F']
第3行值 ['1C', '2C', '3C', '4C', '5C']
第2行第3列值 2C
最大行 5

Excel の書き込み:

import openpyxl
workbook = openpyxl.Workbook()
sheet=workbook.active
sheet['A1']='hi,wwu'
workbook.save('new.xlsx')

プログラムの実行後、新しい New.xls ワークブックを作成し、シート ワークシートを挿入します。A1 の内容は hi, wu です。

3. pandas を使用して Excel を読み取る

Pandas の名前は、パネル データと Python データ分析に由来しています。

まず、pandas モジュールをインストールする必要がありますが、比較的複雑です。

pip install pandas でインストールした後にエラーが発生した場合は、以前のバージョンのインストールを検討してください: pip install pandas==0.22

pandas は、それ自体が多くの読み取りファイルを提供するデータ処理パッケージです。 . read_csv (csv ファイルの読み取り)、read_excel (Excel ファイルの読み取り) などの関数は、わずか 1 行のコードでファイルを読み取ることができます。

Excel の読み取り:

import pandas as pd
df = pd.read_excel(r'data.xlsx',sheetname=0)
print(df.head())

実行結果:

1A 1B 1C 1D 1F
0 2A 2B 2C 2D 2F
1 3A 3B 3C 3D 3F
2 4A 4B 4C 4D 4F
3 5A 5B 5C 5D 5F

Excel の書き込み:

from pandas import DataFrame
data={
'name':['张三','李四','王五'],
'age':[11,12,13]
'sex':'男','女','男']
}
df=DataFrame(data)
df.to_excel('new.xlsx")

プログラムの実行後、 new.xlsx ファイルが作成 (または置換) され、次のようにコンテンツが Sheet1 の A1:D4 領域に保存されます:

PythonでExcelファイルを読み書きする方法

Python 関連の詳細技術的な記事については、Python チュートリアル 列にアクセスして学習してください。

以上がPythonでExcelファイルを読み書きする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。