成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

用Python自動生成數據日報!

開發 后端
今天跟大家聊聊怎么用Python自動生成數據日報!一起來看一下吧。

其實我覺得蠻簡單,核心就是你組裝好日報的內容模板,然后將變化的量交給python去填充,需要用到的基本就是python處理excel、word和ppt等相關的庫。熟練的使用它們,你就可以自動化一條龍了。

日報,是大部分打工人繞不過的難題。

對于管理者來說,日報是事前管理的最好抓手,可以了解團隊的氛圍和狀態??蓪τ趩T工來說,那就有的聊了。對于重復性的工作,我非常推薦大家使用Python將其變成模塊化、自動化,幫助我們實現高效辦公。

下面我們通過一個補寫銷售日報的案例,展示一下Python自動化辦公的優勢。本文簡化了案例的流程,在文末附有完整代碼。

需求詳解

朋友的需求是這樣的,他們平時的銷售數據是記錄在Excel上,匯總后會按照部門進行統計。但是今年年初時,領導突然要求寫日報,大家寫了一個月發現并不檢查就沒繼續寫下去。

現在突然被要求明天交本月之前的所有日報,這相當于要補2-5月將近120天的日報,如果靠雙手復制粘貼,那估計要吐血了。朋友將其寫日報的相關文件都發了過來,發現最終日報效果如下所示。

所以需求也就是比較簡單了,只需要從Excel表格中讀取每日的數據,使用Python將其處理后,再依次寫入Word文檔中,即可實現批量生成日報。

數據處理

在進行數據處理之前,要先了解最終需要哪些數據。如下圖所示,在目標日報Word中主要分為兩類:紅色標記的數值主要是由當日的數據、或者由它們計算后得到的數據構成;綠色標記的表格則更簡單了,就是近七日的數據(銷售數量、銷售金額、銷售目標、完成度)。

首先我們導入Pandas模塊進行數據處理。

import pandas as pd
df = pd.read_excel("日報數據.xlsx")
df

輸出結果:

導入數據后,接著就可以按照我們的需求,來進行數據運算了。數據運算主要分為兩種,一種是利用加 +、減 -、乘 *、除 / 進行數據運算,另一種是利用統計方法進行數據運算。

在交互式環境中輸入如下命令:

df["日期"] = df["日期"].apply(lambda x:x.strftime("%Y-%m-%d"))
df["當日完成度"] = (df["銷售金額"]/df["銷售目標"]*100).round(1)
df["累計銷售金額"] = df["銷售金額"].cumsum()
df["當年完成度"] = (df["累計銷售金額"]/2200000*100).round(1)
df["累計銷售金額"] = (df["累計銷售金額"]/10000).round(2)
df

輸出結果:

可以看到,最終結果截圖中紅色標記的數據內容已經全部被計算出來。而綠色標記的表格則更加簡單了,使用Pandas模塊中的數據選取即可。

在交互式環境中輸入如下命令:

num = 10
df.iloc[num-7:num, :5]

輸出結果:

通過這種方法就可以輕松得到某一日期的過去7日內的日報數據合集。

自動生成日報

使用Python自動化操作Word通常會使用python-docx模塊,而批量生成Word文檔一般有兩種方法:使用add_ paragraph()、add_table()等方法給Word文檔添加各種內容。另一種就是我們這次要用的,即按照位置替換原Word文檔中的文字和表格數據等。

在交互式環境中輸入如下命令:

for index, rows in df.iterrows():
if index > 30:
doc.paragraphs[0].runs[1].text = rows[0]
doc.paragraphs[4].runs[4].text = rows[0]
doc.paragraphs[4].runs[6].text = str(rows[1])
doc.paragraphs[4].runs[8].text = str(rows[2])
doc.paragraphs[5].runs[1].text = str(rows[3])
doc.paragraphs[5].runs[3].text = str(rows[4])
doc.paragraphs[9].runs[2].text = str(rows[5])
doc.paragraphs[9].runs[7].text = str(rows[6])
table = doc.tables[0]
data_table = df.iloc[index-6:index+1,:5]
for i in range(7):
for j in range(5):
table.cell(i+1,j).text = str(df.iloc[i,j])

doc.save(f"銷售日報-{rows[0]}.docx")

執行代碼,輸出結果:

如上圖所示,120份有記錄的銷售日報就寫好啦,Python自動化辦公就是怎么神奇。

完整代碼獲取方式:

鏈接:??https://pan.baidu.com/s/1gayOUOq_YCONvRmtNo0NIA???

提取碼:p9iw

因為語法簡單、容易上手,Python 被稱為“最適合初學者學習”的編程語言。而對于工作中各種重復性的電腦工作,都可以考慮用Python來轉變為自動化程序。

如果你是一個Python初學者,會發現本文的邏輯非常簡單,甚至大家還可以對此進行改進。比如python-docx模塊在讀取Word文檔有優勢,但是向模板中寫入文本時,可以考慮使用docxtpl模塊(學一點Jinja2語法)。

責任編輯:龐桂玉 來源: Python專欄
相關推薦

2024-03-20 08:37:34

數據處理Python數據分析

2023-11-06 06:39:36

數據分析Python

2023-02-23 07:46:48

學習模型數據倉庫

2009-12-30 14:12:53

ADO.NET Fra

2021-09-07 09:01:07

人臉識別人工智能數據

2010-05-07 14:29:45

Unix--Tripw

2021-05-10 09:22:44

.NET數據庫項目

2016-08-23 13:35:22

MVCEFNuGet

2010-09-15 08:53:50

SQL Server

2011-05-25 13:26:09

數據實體

2024-12-04 14:56:10

2022-11-17 11:48:51

自動駕駛算法

2024-03-05 09:22:36

2025-03-04 02:00:00

Python編寫自動化

2020-01-15 16:00:16

Linuxseq命令數字序列

2024-08-13 10:36:25

SpringScrew數據庫

2024-07-26 10:50:51

SpringScrew數據庫

2018-05-11 13:39:05

PythonCSV接口測試

2018-05-11 08:29:10

Python自動化測試數據驅動

2022-06-20 11:28:20

人工智能數據生成器
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美一区二区三区国产精品 | 亚洲欧美中文日韩在线v日本 | 精品二区视频 | 成人久久18免费网站 | 在线视频中文字幕 | 日韩中文字幕一区二区 | 国产精品免费大片 | 国产成人精品在线播放 | 岛国av免费观看 | 一区二区三区成人 | 嫩草一区二区三区 | 精品国产欧美 | 欧美综合一区二区 | 久草欧美视频 | 国产精品嫩草影院精东 | 九九热在线视频免费观看 | 免费观看黄色片视频 | 黄a网 | 亚洲精品久久久久久久久久吃药 | 欧美在线一区二区三区 | 欧美久久久久久 | 亚洲三级在线 | 国产96在线| 色约约视频 | 国产精品久久久久无码av | 国产天堂| 久久久精品一区二区三区 | 伊人精品在线 | 中文字幕国产精品 | 欧美日韩在线视频观看 | 黄色免费av | 精品一区免费 | 欧美激情一区二区三区 | 在线亚洲精品 | 国内精品久久精品 | 一级做受毛片免费大片 | 夜夜骚 | 黄色一级大片在线免费看产 | 粉嫩av在线 | www.国产日本 | 日韩在线视频精品 |