まず第一に
観察したところ、WeChatの消費には約3つのタイプがあることがわかりました。
1.
マーチャントのQRコードをスキャンして支払います2.マーチャントで直接購入し
ます3.ルームメイトに赤い封筒を送って、食事を持ってくるように頼みます
次に、特定の消費の詳細を数えたい
1.準備
まず、WeChatで消費請求書をエクスポートする必要があります。次に、役に立たない情報を削除します。このような
以下のライブラリをインストールします
pip install xlrd
pip install xlwt
最初のライブラリはxlsファイルを読み取るためのもので、2番目はxlsファイルを書き込むためのものです(最初のライブラリはxlsxをサポートし、2番目はサポートしません)
2.コードの記述を開始します
1.ライブラリをインポートします
コードは次のとおりです(例):
import xlrd import xlwt import os import shutdown 1234
後者の2つのライブラリの役割について話させてください
2.フォームを開きます
コードは次のとおりです(例):
data = xlrd.open_workbook(r'C:\ Users \ xvjiu \ Desktop \ python \ Statistics \ WeChat Pay Bill.xls ')#ファイルを開くtable = data.sheet_by_index(0) #テーブル行を初期化= table.nrows #Statistics行番号 col = table.ncols#統計列番号 1234
3.データを読み込みます
コードは次のとおりです(例):
for i in range(1、row): type_ = table.cell_value(i、0)#列Aに対応するトランザクションタイプ name_ = table.cell_value(i、1) #列Bに対応するトランザクション対応するojbk_ = table.cell_value( i、2) #列Cの商品に対応shzh_ = table.cell_value(i、3) #列Dの収入と支出に対応qian_ = table.cell_value(i、4)#列Eの金額に対応 123456
4.データを整理します
リストを使用してカウンターパーティを保存し(列b)、辞書を使用して商品の総消費量をカウントします
if type _ == "扫二维码付カセット": if name_ in li0: d2 [name _] = d2 [name _] + int(qian_) else: d2 [name _] = int(qian_) li0.append( name_ )if type_ == "商户消费":name_ = name_ + str(ojbk_) if name_ in li1: d2 [name _] = d2 [name _] + int(qian_) else: d2 [name _] = int(qian_) li1.append(name_ ) if type _ == "微信红包(モノクロ)": name_ = name_ + str(ojbk_) if name_ in li3: d2 [name _] = d2 [name _] + int(qian_) else: d2 [name _] = int( qian_) li3.append(name_) if type _ == "微信红包(群红包)":#li4 d2 name_ = name_ + str(ojbk_) if name_ in li4: d2 [name _] = d2 [name _] + int(qian_) else: d2 [name _] = int(qian_) li4.append(name_) 12345678910111213141516171819202122232425262728293031323334
5.データを書き込む
コードは次のとおりです(例):
-------------------------------------------------- ----------最初の書き込み--------------------- file_name = "zyz" + ".xls" workbook = xlwt.Workbook(encoding = 'utf-8') ワークシート= workbook.add_sheet( 'sheet1') #-------------------------------- --------------------------ファイルへの書き込み------------------- ---- li = ***#置換リスト d = ***# 範囲内のiの置換辞書(len(li)): worksheet.write(i、1、label = d [li [i]]) ワークシート.write(i、0、label = li [i]) #----------------------------------- -------------------------転送ファイルパス--------------------- ワークブック .save (file_name)aa = os.getcwd() file_path = os.path.join(aa、file_name) target_path = r'C:\ Users \ Desktop \ python \ ******。xls '#ファイル名を置き換える shutil.move(file_path、target_path) 1234567891011121314151617181920
xlwtライブラリはカスタムエクスポートパスをサポートしていないため、osとshutilを使用してエクスポートパスをカスタマイズする必要があります
6.出力結果
やっと
上記はExcel関数で実現できると言われていますが、計算的思考を聞く人は誰でも
*免責事項:この記事はインターネット上で構成されており、著作権は元の著者に帰属します。ソース情報が間違っているか、権利を侵害している場合は、問題を削除または承認するために私たちに連絡してください
最近、多くの友人がプライベートメッセージを通じてPythonの学習問題について相談しました。コミュニケーションを促進するには、青をクリックしてディスカッションに参加し、自分でリソースベースに回答してください