ホームページ >バックエンド開発 >Python チュートリアル >Python は Excel ファイルを読み取って生成します

Python は Excel ファイルを読み取って生成します

高洛峰
高洛峰オリジナル
2016-10-18 11:59:041299ブラウズ

今日は、Python を使用して Excel ファイルを処理する方法を見てみましょう。Excel ファイルの処理では、Python 自体に csv モジュールが付属しています。

1. Python を使用して csv ファイルを読み取ります:

csv は、通常、execl によって生成される形式を csv に直接変更すると、エラーが報告されます。エラー: 行に NULL バイトが含まれています

insun 解決策: エラーの原因は、拡張子が xls の execl ファイルの名前を直接 csv ファイルに変更することです。たとえば、次のようにします。このような CSV ファイルがある場合:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
  
import csv
with open('egg.csv','rb') as f:
reader = csv.reader(f)
for row in reader:
print row

Print このリストのように表示されます

Python は Excel ファイルを読み取って生成します

['a', '1', '1', '1']


['a', '2 ', '2', '2']

['b' , '3', '3', '3']

['b', '4', '4', '4']

['b', '5', '5', '5' ]

['b', '6', '6', '6']

['c', '7', '7' 、'7']

['c', '8', '8', '8']

['c', '9', '9', '9']

['c', '10', '10', '10']

['d', '11', '11', '11']

['e', '12', '12', '12']

['e', '13', '13', ' 13']

['e', '14', '14', '14']

2. Python を使用して次のように記述します。 csv生成

#!/usr/bin/env python
# -*- coding:utf-8 -*-
  
import csv
with open('egg2.csv', 'wb') as csvfile:
spamwriter = csv.writer(csvfile, delimiter=' ',quotechar='|', quoting=csv.QUOTE_MINIMAL)
spamwriter.writerow(['a', '1', '1', '2', '2'])
spamwriter.writerow(['b', '3', '3', '6', '4'])
spamwriter.writerow(['c', '7', '7', '10', '4'])
spamwriter.writerow(['d', '11','11','11', '1'])
spamwriter.writerow(['e', '12','12','14', '3'])

このように保存する内容は1列に保存されます 5列保存するという本来の意図とは異なります

Python は Excel ファイルを読み取って生成します Pythonのcsvを使ってExcelと互換性のあるcsvファイルを生成すると、主なことは、ライターのパラメータを作成するときに方言='excel' にすることです

コードは次のように変更されます:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
  
import csv
with open('egg2.csv', 'wb') as csvfile:
spamwriter = csv.writer(csvfile,dialect='excel')
spamwriter.writerow(['a', '1', '1', '2', '2'])
spamwriter.writerow(['b', '3', '3', '6', '4'])
spamwriter.writerow(['c', '7', '7', '10', '4'])
spamwriter.writerow(['d', '11','11','11', '1'])
spamwriter.writerow(['e', '12','12','14', '3'])

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