




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第利用Python自動(dòng)化生成愛豆日歷詳解目錄1.科普2.愛豆日歷3.總結(jié)本次內(nèi)容有感于《Python編程快速上手-讓繁瑣工作自動(dòng)化》。
根據(jù)書中的「處理Excel電子表格」章節(jié)內(nèi)容,做出一份專屬日歷。
使用的模塊為openpyxl,一個(gè)能讀取和修改Excel電子表格的Pyhton模塊。
實(shí)現(xiàn)自動(dòng)化處理表格信息,擺脫無趣無味。
此外還有calendar模塊,通過該模塊生成日歷信息。
最后利用openpyxl和calendar庫,實(shí)現(xiàn)自動(dòng)化生成愛豆日歷。
1.科普
在進(jìn)行代碼操作前,簡單對(duì)相關(guān)知識(shí)做個(gè)簡單的學(xué)習(xí)。
一個(gè)Excel電子表格文檔稱為一個(gè)工作?。
一個(gè)工作?保存在擴(kuò)展名為「.xlsx」的文件中。
劃重點(diǎn),openpyxl只支持「.xlsx」類型的格式。
所以對(duì)于Excel2003版「.xls」格式是不支持的。
每個(gè)工作?可以包含多個(gè)表,又稱為工作表。
本次生成的信息就是在一個(gè)工作?,12個(gè)工作表內(nèi)。
calendar庫主要是生成日歷信息。
importcalendar
#設(shè)置每周的起始日期碼,為星期天
calendar.setfirstweekday(firstweekday=6)
#返回2025年年歷
print(calendar.calendar(2025,w=2,l=1,c=6))
輸出如下
返回1月份每列信息情況。
#返回每月每列信息
print(calendar.monthcalendar(2025,1))
#輸出結(jié)果
[[0,0,1,2,3,4,5],[6,7,8,9,10,11,12],[13,14,15,16,17,18,19],[20,21,22,23,24,25,26],[27,28,29,30,31,0,0]]
與上圖里1月份信息比較下,你會(huì)發(fā)現(xiàn)多了個(gè)數(shù)字0。
其他完全一樣,所以遍歷列表信息就完事了。
2.愛豆日歷
愛豆日歷的生成其實(shí)也挺簡單的。
主要是單元格文本添加,字體設(shè)置,背景設(shè)置,圖片設(shè)置。
詳細(xì)代碼如下。
fromopenpyxl.stylesimportAlignment,PatternFill,Font
fromopenpyxl.utilsimportget_column_letter
fromopenpyxl.drawing.imageimportImage
importopenpyxl
importcalendar
#設(shè)置第一天為星期天
calendar.setfirstweekday(firstweekday=6)
#創(chuàng)建一個(gè)工作?
wb=openpyxl.Workbook()
#遍歷12個(gè)月
foriinrange(1,13):
#添加工作表
sheet=wb.create_sheet(index=0,title=str(i)+'月')
#獲取具體日期時(shí)間
forjinrange(len(calendar.monthcalendar(2025,i))):
forkinrange(len(calendar.monthcalendar(2025,i)[j])):
value=calendar.monthcalendar(2025,i)[j][k]
#將0值變?yōu)榭罩?/p>
ifvalue==0:
value=''
sheet.cell(row=j+9,column=k+1).value=value
else:
sheet.cell(row=j+9,column=k+1).value=value
#設(shè)置字體
sheet.cell(row=j+9,column=k+1).font=Font(u'微軟雅黑',size=11)
#單元格文字設(shè)置,右對(duì)齊,垂直居中
align=Alignment(horizontal='right',vertical='center')
#單元格填充色屬性設(shè)置
fill=PatternFill("solid",fgColor="B9EBF7")
#對(duì)單元格進(jìn)行顏色填充
fork1inrange(1,100):
fork2inrange(1,100):
sheet.cell(row=k1,column=k2).fill=fill
#添加星期幾信息行
days=['星期日','星期一','星期二','星期三','星期四','星期五','星期六']
num=0
fork3inrange(1,8):
sheet.cell(row=8,column=k3).value=days[num]
sheet.cell(row=8,column=k3).alignment=align
sheet.cell(row=8,column=k3).font=Font(u'微軟雅黑',size=11)
#設(shè)置列寬12
c_char=get_column_letter(k3)
sheet.column_dimensions[get_column_letter(k3)].width=12
num+=1
#設(shè)置行高30
fork4inrange(8,14):
sheet.row_dimensions[k4].height=30
#合并單元格
sheet.merge_cells('I1:P20')
#添加圖片
img=Image('huge_2.jpg')
sheet.add_image(img,'I1')
#添加年份及月份
sheet.cell(row=3,column=1).value='2025年'
sheet.cell(row=4,column=1).value=str(i)+'月'
#設(shè)置年份及月份文本屬性
sheet.cell(row=3,column=1).font=Font(u'微軟雅黑',size=16,bold=True,color='FF7887')
sheet.cell(row=4,column=1).font=Font(u'微軟雅黑',size=16,bold=True,color='FF7887')
sheet.cell(row=3,column=1).alignment=align
sheet.cell(row=4,column=1).alignment=align
#保存文檔
wb.save('愛豆日歷.xlsx')
最后來個(gè)小預(yù)覽。
原來小F的愛豆是胡歌,那么你的又是誰。
還不去動(dòng)動(dòng)手,做出屬于自己的愛豆日歷。
這里小F由于時(shí)間關(guān)系,忘記給星期六、星期日這兩列更改字體顏色。
小伙伴們?cè)趪L試的時(shí)候,記得更改?。。?/p>
3.總結(jié)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年調(diào)節(jié)球閥項(xiàng)目可行性分析報(bào)告
- 航模社團(tuán)團(tuán)隊(duì)建設(shè)活動(dòng)計(jì)劃
- 2025至2030年中國中濃度啤酒行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年一年級(jí)班主任科學(xué)探索計(jì)劃
- 2025年氯系漂白助劑項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告
- 物業(yè)服務(wù)合同條款及質(zhì)量保障措施
- 2025年洗潔精項(xiàng)目申請(qǐng)報(bào)告
- 2025年年物流倉儲(chǔ)項(xiàng)目提案報(bào)告模板
- 公共場所控?zé)熐闆r調(diào)研報(bào)告3
- 電動(dòng)汽車電子系統(tǒng)設(shè)計(jì)實(shí)習(xí)報(bào)告
- 船舶維修合同協(xié)議書
- 《比亞迪品牌歷史課件》課件
- 2025年4月自考00160審計(jì)學(xué)答案含評(píng)分參考
- 購買木地板合同協(xié)議
- 嚴(yán)重開放性肢體創(chuàng)傷早期救治專家共識(shí)解讀
- 速賣通開店考試最權(quán)威答案
- 輸液導(dǎo)管相關(guān)靜脈血栓形成中國專家共識(shí) 課件
- 國企崗位筆試題目及答案
- 2024年泉州實(shí)驗(yàn)中學(xué)初一新生入學(xué)考試數(shù)學(xué)試卷
- SWAT培訓(xùn)課件教學(xué)課件
- 建設(shè)項(xiàng)目全過程工程咨詢-終結(jié)性考試-國開(SC)-參考資料
評(píng)論
0/150
提交評(píng)論