广东的太阳还是那么大,隔着玻璃都能感受到热浪。

明明前不久才立夏(明明已经过去三个月!!)

时间跑,日程赶。

昨日又迎来了立秋,正在放暑假的童靴是不是有点忘记时间了呢~

什么?真的忘记了?没关系,今日小编为大家带来一款由excel简易DIY的小日历

给自己10分钟,python回你一个智慧与美貌并存的备忘小神器,相信它会给你带来不少方便

一、环境说明

开始之前,当然要跟小伙伴们交代一下运行环境咯

我们使用的python版本为Python3.6,需要使用到的包为openpyxl及calendar,后者是python自带的,而前者则需要小伙伴们打开Cmd/Terminal,运行以下指令安装,如果你还没有安装python,请看这篇文章:

pip install openpyxl

安装完成后我们就可以正式开始啦!

二、代码说明

1. 首先,绘制一份日历,我们得先知道每个月份有多少天,每天都是星期几,我们使用calendar包获得这些信息:

calendar.monthcalendar(2019,i)

通过这个函数,我们能得到 2019年i月的日历,它类似一个j*k的矩阵,因此我们可以这样遍历得到每一个日期:

forjinrange(len(calendar.monthcalendar(2019,i))):

forkinrange(len(calendar.monthcalendar(2019,i)[j])):

value=calendar.monthcalendar(2019,i)[j][k]

2. 其次,我们怎么样绘制得到日历呢?

openpyxl包给予了我们答案,最方便的做法是我们先将日历绘制到excel中,然后再从excel中提取图片出来。openpyxl怎么用?给大家一个设置单元格字体的例子:

sheet.cell(row=j+4+count,column=k+2).font=Font(u'微软雅黑',color=text_color,size=14)

sheet是对应的表格,row和column就是某个单元格的位置,然后对font属性进行设置,调用Font类并设置参数,如果大家不知道Font类有什么参数,可以参考openpyxl官方文档:https://openpyxl.readthedocs.io/en/stable/,你可以看到里面大部分单元格的属性都是这样设置的,非常简单。

3. 我们的作品是每个月份都有一个图在旁边做装饰,其添加方法如下:

imgs=['12/1.jpg','12/2.jpg','12/3.jpg','12/4.jpg','12/5.jpg','12/6.jpg','12/7.jpg','12/8.jpg','12/9.jpg','12/10.jpg','12/11.jpg','12/12.jpg']

img=Image(imgs[i-1])

sheet.add_image(img,'J2')

imgs是每个图的相对路径,如12/1.jpg 是名字为12的文件夹下的1.jpg. 图像路径要导入到openpyxl的Image对象中:img=Image('12/1.jpg'),然后将该变量放置到某个单元格上:sheet.add_image(img, 'J2).

这样看你可能会有点糊涂, i-1是哪里来的?sheet是哪里来的?没关系,其实是因为讲解的时候只能给大家献上部分代码,看完下面的完整代码你们就懂啦:

点击查看大图

4. 我们还有一个神秘功能

差点忘了告诉大家了,我们的日历能支持备注哦,在调用get_month_xlsx得到文档前,通过set_information()放入你某一天想做的事情即可。如:

set_information('2019-12-5','面试')

三、运行代码

终于到了激动人心的运行代码部分了,运行这份代码,你只需要把你想要的图片变量名(imgs)里的路径改成你的图片路径即可。然后在本地cmd/terminal运行:

python 这份代码的文件名.py

会自动生成一个excel表格叫my_calendary.xlsx. 怎样从里面把日历提取成图片呢?很简单,复制拉取你想要的部分,粘贴到聊天窗口就能变成一个图片!这里给大家献上源代码里的前6张图,希望大家喜欢!

下载地址:

https://pythondict.com/wp-content/uploads/2019/08/2019080909262065.zip

(PS:后6张希望大家能自己动手跟着做一做,你一定会有收获的)

根据大家的喜好,大家可以自己设置背景色、边框色、交替色和图片,还有把这个讨厌的好看的二维码去掉。如果有阅读完注释还是不懂的地方,欢迎在下方留言区讨论,我们会抽空回答的~

Python实用宝典 (pythondict.com)

不只是一个宝典

欢迎关注公众号:Python实用宝典

python 日历壁纸_Excel+Python=精美壁纸日历 任意DIY相关推荐

  1. python高清壁纸_用Python下载momentum中的精美壁纸

    #! /usr/bin/python # encoding=utf-8 """ @desc 下载momentum中的精美壁纸 @api https://d3cbihxaq ...

  2. python 日历壁纸_Excel+Python=精美DIY壁纸日历

    一.准备 开始之前,你要确保Python和pip已经成功安装在电脑上噢,如果没有,请访问这篇文章:超详细Python安装指南进行安装.如果你用Python的目的是数据分析,可以直接安装Anaconda ...

  3. 斗罗大陆手机壁纸超清 精美壁纸

    大家近期有没有出门感受春天的计划呀~唐三小舞春分壁纸奉上. 凡事要有目标与计划,这样往往能获得丰收.你们为自己定下了什么目标呢? 高贵典雅的女神比比东来了

  4. 高清精美壁纸:2013年9月桌面日历壁纸免费下载

    按照罗马旧历,March 为第一个月,September 就是第七个月.September 这一名称源自意为"七"的拉丁文 septem.当罗马人采用了儒略历之后,他们保留了原先的 ...

  5. 高清精美壁纸:2013年6月桌面日历壁纸免费下载

    June(六月)一种传说来源于 Junius 这个拉丁字族姓:另一种说法是根据女神 Juno 的名字命名的.6月是一年中最热季节的开始,大家注意防热避暑. 这篇文章的主题是壁纸,继续向大家分享一批精美 ...

  6. 高清精美壁纸:2013年4月桌面日历壁纸免费下载

    阳春三月,草长莺飞,又到一年春花烂漫时.在这个美好的日子里,我为大家收集了一批非常精美的2013年4月桌面日历壁纸,供大家免费下载.这些高清日历桌面壁纸用在桌面上非常方便实用,赶紧为你的桌面换换装吧! ...

  7. Python运用urllib2和BeautifulSoup爬取网站ZOL桌面壁纸上的精美电脑壁纸

    Python运用urllib2和BeautifulSoup爬取网站ZOL桌面壁纸上的精美电脑壁纸 #!/usr/bin/env python # -*- coding: utf-8 -*- # @Ti ...

  8. 有没有关于python的壁纸_Python 实战之精美壁纸下载

    之前讲解了爬虫系列的文章<最通俗的Python3网络爬虫入门>今天继续精美壁纸下载(动态网站). 实战背景 已经会爬取文字了,是不是感觉爬虫还是蛮好玩的呢?接下来,让我们进行一个进阶实战, ...

  9. 高清精美壁纸:2013年3月桌面日历壁纸免费下载

    过完中国传统的农历新年,大家又开始奔波忙碌了.令人期待的2013年3月桌面日历壁纸新鲜出炉,供大家免费下载.高清日历桌面壁纸可以直接在桌面上看到某一天所对应的星期,并且还含农历哦,非常方便实用,赶紧为 ...

最新文章

  1. 慕课网 深入浅出javascript 笔记
  2. FATCAT桌面计算器即将出炉!
  3. .NET中的异步编程(四)- IO完成端口以及FileStream.BeginRead
  4. python应用:最长无重复字串提取
  5. java 语法 冒号_java中生僻的冒号跳转语法
  6. Android开发之Retrofit常见错误@FieldMap parameters can only be used with form encoding. (parameter #1)
  7. shell中各种括号()、(())、[]、[[]]、{}的作用
  8. 阿里对mysql的优化_阿里P8架构师谈:MySQL慢查询优化、索引优化、以及表等优化总结...
  9. jetbrains IDEA/pycharm修改代码提示框配色
  10. python书籍推荐:Python数据科学手册
  11. mysql 数据库连接 w3school_PHP 连接 MySQL
  12. NAnt 与 MS Build
  13. [ POI 2005 ] Bank Notes
  14. llustrate dBpoweramp Asset UPnP Premium Mac 音频服务器
  15. python-图书管理系统2-整体 代码架构
  16. 直插式电阻电容封装与尺寸图解
  17. flash cs4 无法调试
  18. grads 读取shp
  19. 专升本C语言知识点笔记
  20. 西电计算机学院硕士生导师马,西安电子科技大学计算机学院研究生导师简介-周端...

热门文章

  1. 《Android 应用 之路》 MPAndroidChart~BubbleChart(气泡图) and RadarChart(雷达图)
  2. python调用微信客户端_用Python编写的简化版微信客户端
  3. 永不言弃,希望就在前方
  4. DragonBoard 410c开发套件试用上手报告-搭建一个家庭智能管家的大脑
  5. 人脸论文解读系列——三维人脸重建(一)
  6. java基础-RSA签名验签
  7. MATLAB中assignment模块,Simulink Matlab Function 模块使用问题求教
  8. 从gnuplot到GeoGebra的艰难之旅
  9. php 商品模块添加商品属性,添加新商品
  10. 冬令营Web基础整理——Day2