温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么用Python实现一本个性化日历

发布时间:2022-02-08 10:28:39 来源:亿速云 阅读:149 作者:iii 栏目:开发技术

今天小编给大家分享一下怎么用Python实现一本个性化日历的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

    一、准备

    开始之前,你要确保Python和pip已经成功安装在了电脑上。如果没有,可以在公众号“Crossin的编程教室”里回复关键字 安装,查看相关演示教程。另外,如果你用Python的目的是做数据分析,可以直接安装Anaconda,

    Windows环境下打开 CMD (开始—运行—CMD),苹果系统环境下请打开 终端 Terminal (command+空格输入Terminal),准备开始输入命令安装依赖。

    在终端输入以下命令安装所需要的依赖模块:

    pip install openpyxl

    看到 Successfully installed xxx 则说明安装成功。

    二、代码说明

    1. 获取日期

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

    calendar.monthcalendar(2021, i)

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

    # calendar.monthcalendar 获得的值类似于:
    # [[0, 0, 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]]
    # 从左至右为星期日到星期六
    month_calendar = calendar.monthcalendar(2021, i)
    for row in range(len(month_calendar)):
        for col in range(len(month_calendar[row])):
            value = month_calendar[row][col]

    怎么用Python实现一本个性化日历

    2. 绘制得到日历

    Openpyxl模块提供了许多方便的功能,比如设置单元格格式、调整单元格颜色、添加图片等。

    基于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官方文档。

    你可以看到里面大部分单元格的属性都是类似上面那样设置的,非常简单。

    3. 作品是每个月份都有一个图在旁边做装饰

    为了给每个月份添加一份装饰图,需要向Excel中插入图片,幸运的是,Openpyxl提供了很方便的插入方法:

    # 添加图片 img = Image(f’12graphs/{i}.jpg’) sheet.add_image(img, ‘I2’)

    12graphs下存放了12个月份的图,循环遍历每张表格,就能将对应的图表添加并渲染到 I2 格子上.

    怎么用Python实现一本个性化日历

    你也可以自行DIY,比如换上女票的照片,然后作为礼物送给她

    请注意图片的名称不能过错,必须是从1到12的jpg格式。

    怎么用Python实现一本个性化日历

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

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

     set_information('2021-12-1', '考试') set_information('2021-12-1', '约会')

    简单的代码讲解如上,详细代码可以在公众号后台回复 日历 下载查看。

    怎么用Python实现一本个性化日历

    三、运行代码

    终于到了激动人心的运行代码部分了,运行这份代码,你只需要在本地 cmd/terminal 进入该项目源代码文件夹运行:

    python calendary.py

    会自动生成一个excel表格叫my_calendary.xlsx,这就是我们生成的日历了。

    怎样从里面把日历提取成图片?

    很简单,复制你想要的部分,粘贴到任何聊天窗口就能变成一张图片

    怎么用Python实现一本个性化日历

    以上就是“怎么用Python实现一本个性化日历”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    AI