<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          數(shù)據(jù)日?qǐng)?bào)自動(dòng)化了!

          共 3962字,需瀏覽 8分鐘

           ·

          2022-07-13 12:00

          今天給大家推薦好朋友朱小五的新作,并抽取了書里的部分案例給大家看看這本書到底有多棒~

          前排提示:文末粉絲福利,送3本~

          日?qǐng)?bào),是大部分打工人繞不過的難題。
          對(duì)于管理者來說,日?qǐng)?bào)是事前管理的最好抓手,可以了解團(tuán)隊(duì)的氛圍和狀態(tài)。可對(duì)于員工來說,那就有的聊了。對(duì)于重復(fù)性的工作,我非常推薦大家使用Python將其變成模塊化、自動(dòng)化,幫助我們實(shí)現(xiàn)高效辦公。
          下面我們通過一個(gè)補(bǔ)寫銷售日?qǐng)?bào)的案例,展示一下Python自動(dòng)化辦公的優(yōu)勢(shì)。本文簡(jiǎn)化了案例的流程,在文末附有完整代碼。

          需求詳解

          朋友的需求是這樣的,他們平時(shí)的銷售數(shù)據(jù)是記錄在Excel上,匯總后會(huì)按照部門進(jìn)行統(tǒng)計(jì)。但是今年年初時(shí),領(lǐng)導(dǎo)突然要求寫日?qǐng)?bào),大家寫了一個(gè)月發(fā)現(xiàn)并不檢查就沒繼續(xù)寫下去。
          ▲Excel日?qǐng)?bào)數(shù)據(jù)
          現(xiàn)在突然被要求明天交本月之前的所有日?qǐng)?bào),這相當(dāng)于要補(bǔ)2-5月將近120天的日?qǐng)?bào),如果靠雙手復(fù)制粘貼,那估計(jì)要吐血了。朋友將其寫日?qǐng)?bào)的相關(guān)文件都發(fā)了過來,發(fā)現(xiàn)最終日?qǐng)?bào)效果如下所示。
          所以需求也就是比較簡(jiǎn)單了,只需要從Excel表格中讀取每日的數(shù)據(jù),使用Python將其處理后,再依次寫入Word文檔中,即可實(shí)現(xiàn)批量生成日?qǐng)?bào)。
          正好最近有本新書《快學(xué)Python:自動(dòng)化辦公輕松實(shí)戰(zhàn)》,既是一本Python入門書,又包含了大量Python自動(dòng)化辦公的實(shí)戰(zhàn)項(xiàng)目。我們只需學(xué)習(xí)其中的第3章、第5章,即可輕松實(shí)現(xiàn)今天的這個(gè)需求。

          數(shù)據(jù)處理

          在進(jìn)行數(shù)據(jù)處理之前,要先了解最終需要哪些數(shù)據(jù)。如下圖所示,在目標(biāo)日?qǐng)?bào)Word中主要分為兩類:紅色標(biāo)記的數(shù)值主要是由當(dāng)日的數(shù)據(jù)、或者由它們計(jì)算后得到的數(shù)據(jù)構(gòu)成;綠色標(biāo)記的表格則更簡(jiǎn)單了,就是近七日的數(shù)據(jù)(銷售數(shù)量、銷售金額、銷售目標(biāo)、完成度)。
          首先我們導(dǎo)入Pandas模塊進(jìn)行數(shù)據(jù)處理,在新書《快學(xué)Python:自動(dòng)化辦公輕松實(shí)戰(zhàn)》的第3章中,正是【學(xué)習(xí)Python,可以自動(dòng)化處理數(shù)據(jù)】。
          import pandas as pd
          df = pd.read_excel("日?qǐng)?bào)數(shù)據(jù).xlsx")
          df
          輸出結(jié)果
          導(dǎo)入數(shù)據(jù)后,接著就可以按照我們的需求,來進(jìn)行數(shù)據(jù)運(yùn)算了。數(shù)據(jù)運(yùn)算主要分為兩種,一種是利用加 +、減 -、乘 *、除 / 進(jìn)行數(shù)據(jù)運(yùn)算,另一種是利用統(tǒng)計(jì)方法進(jìn)行數(shù)據(jù)運(yùn)算。
          在交互式環(huán)境中輸入如下命令:
          df["日期"] = df["日期"].apply(lambda x:x.strftime("%Y-%m-%d"))
          df["當(dāng)日完成度"] = (df["銷售金額"]/df["銷售目標(biāo)"]*100).round(1)
          df["累計(jì)銷售金額"] = df["銷售金額"].cumsum()
          df["當(dāng)年完成度"] = (df["累計(jì)銷售金額"]/2200000*100).round(1)
          df["累計(jì)銷售金額"] = (df["累計(jì)銷售金額"]/10000).round(2)
          df
          輸出結(jié)果:
          可以看到,最終結(jié)果截圖中紅色標(biāo)記的數(shù)據(jù)內(nèi)容已經(jīng)全部被計(jì)算出來。而綠色標(biāo)記的表格則更加簡(jiǎn)單了,使用Pandas模塊中的數(shù)據(jù)選取即可,詳見新書《快學(xué)Python:自動(dòng)化辦公輕松實(shí)戰(zhàn)》章節(jié)3.2.3。
          在交互式環(huán)境中輸入如下命令:
          num = 10
          df.iloc[num-7:num, :5]
          輸出結(jié)果:
          通過這種方法就可以輕松得到某一日期的過去7日內(nèi)的日?qǐng)?bào)數(shù)據(jù)合集。

          自動(dòng)生成日?qǐng)?bào)

          如果想自動(dòng)生成Word日?qǐng)?bào),就需要學(xué)習(xí)新書《快學(xué)Python:自動(dòng)化辦公輕松實(shí)戰(zhàn)》中第5章的內(nèi)容,即【學(xué)習(xí)Python,可以自動(dòng)化操作Word】。
          使用Python自動(dòng)化操作Word通常會(huì)使用python-docx模塊,而批量生成Word文檔一般有兩種方法:使用add_ paragraph()add_table()等方法給Word文檔添加各種內(nèi)容。另一種就是我們這次要用的,即按照位置替換原Word文檔中的文字和表格數(shù)據(jù)等。
          在交互式環(huán)境中輸入如下命令:
          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"銷售日?qǐng)?bào)-{rows[0]}.docx")
          執(zhí)行代碼,輸出結(jié)果:
          如上圖所示,120份有記錄的銷售日?qǐng)?bào)就寫好啦,Python自動(dòng)化辦公就是怎么神奇。

          完整代碼獲取方式:
          鏈接:https://pan.baidu.com/s/1TPn53r4wd_k_VgqOewlO_A?pwd=kxpy
          提取碼:kxpy
          因?yàn)檎Z法簡(jiǎn)單、容易上手,Python 被稱為“最適合初學(xué)者學(xué)習(xí)”的編程語言。而對(duì)于工作中各種重復(fù)性的電腦工作,都可以考慮用Python來轉(zhuǎn)變?yōu)樽詣?dòng)化程序。
          如果你是一個(gè)Python初學(xué)者,會(huì)發(fā)現(xiàn)本文的邏輯非常簡(jiǎn)單,甚至大家還可以對(duì)此進(jìn)行改進(jìn)。比如python-docx模塊在讀取Word文檔有優(yōu)勢(shì),但是向模板中寫入文本時(shí),可以考慮使用docxtpl模塊(學(xué)一點(diǎn)Jinja2語法)。

          如果你是一個(gè)0基礎(chǔ)的編程初學(xué)者,那也不用怕!
          因?yàn)檎米罱犊鞂W(xué)Python:自動(dòng)化辦公輕松實(shí)戰(zhàn)》上市了,人生苦短,快學(xué)Python!這是一本適合初學(xué)者的Python入門書,也是進(jìn)階學(xué)習(xí)Python自動(dòng)化操作Word 、Excel 、PPT、PDF、溝通工具、圖片和文件的寶典,更是一本擁有30+實(shí)戰(zhàn)案例、10+工作項(xiàng)目的參考大全!
          今天分享文章的Python自動(dòng)化辦公案例,其中知識(shí)點(diǎn)就是來自《快學(xué)Python:自動(dòng)化辦公輕松實(shí)戰(zhàn)》書籍。
          如果大家感興趣,可以點(diǎn)擊下方鏈接查看書籍介紹和目錄,絕對(duì)是最適合大家的Python入門書,也是大家學(xué)習(xí)Python自動(dòng)化辦公的進(jìn)階書,更是隨時(shí)可以翻看參考的案例寶典!

          最后的最后,這本寶藏書籍,給大家來波福利,這次送3本!

          抽獎(jiǎng)方式簡(jiǎn)單粗暴,本文點(diǎn)贊/在看/分享的同學(xué)中抽三本。
          瀏覽 46
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  人操操操操操人人人 | 日韩一区二区在线视频 | 日本精品一区二区三区视频 | 欧美,三级黄 | 91精品人妻少妇无码影院 |