从零开始学Python(8) -----用2行代码制作简单的Python日历

用两行Python代码制作简单的日历

马上就要步入新的一年了,是不是需要一个新年的日历啊。我们看看怎么样使用Python轻松的创建日历。

我们可以使用Python的calendar模块轻松地输出日历。而且,您只需要编写两行代码即可。那么我们就来看看如何在Python中显示各种日历吧。

首先让我们编写一个显示日历的两行代码吧。启动Python附带的IDLE shell,然后输入以下两行代码。

 import calendar
 print(calendar.month(2021, 1))

在IDLE中的执行结果如下:

通过仅写两行代码显示日历

关于使用方法,请参考下面的格式说明。

 calendar.month(年, 月, w=列幅, l=行数)

如果指定关键字参数w和l,则可以在输出日历时调整天与天之间的输出宽度。以下是指定w = 7和l = 2的示例。

print(calendar.month(2021, 1, w=7, l=2))     

执行后的显示结果如下。

指定了w或l参数的输出

您甚至可以省略print方法

在Python的calendar模块中,提供了calendar.prmonth()函数。用这个函数您即使不用print函数也可以把日历的内容简单地显示出来。参数和month()函数相同。

以下是输出2021年1月月历的代码。

 calendar.prmonth(2021, 1, w=7)

让我们在IDLE上看一下。可以看到效果和用print打印出来的一样。

您甚至可以省略print打印

就是这么简单,所以对于那些一直打开着IDLE的码农来说,直接用calendar.prmonth()来查看日历也许比启动日历应用程序来的更快一些。(笑)。

通过将内容保存到网页,并用浏览器打开,可以使内容看起来更好看,更直观

为了让日历的内容看起来更好看,我们稍微改一下代码,把日历的内容保存到HTML中。执行以下代码,将输出一个名为“ calendar202101.html”的HTML文件。

 # 制作一个月的日历 --- (*1)
 import calendar
 lc = calendar.HTMLCalendar()
 body = lc.formatmonth(2021, 1)

 # 保存到文件 --- (*2)
 f = open("calendar202101.html", "wt")
 f.write("<body>" + body + "</body>")

将生成的HTML文件拖放到浏览器中,来看看日历的效果。

在HTML中表示

在谷歌浏览器中,右键单击网页,然后从弹出菜单中单击“检查”。您可以检查其输出的HTML的结构。

我们来简单地看一下代码。首先我们使用了calendar模块的HTMLCalendar方法。

在代码的(* 1)部分中,通过创建HTMLCalendar对象并调用formatmonth()方法就可以轻松地生成HTML形式的日历

在代码的(* 2)中,把生成的HTML代码保存在了文件中。事实上,我们可以通过修改<style>标签的内容来详细的设定日历的显示格式。

接下来,让我们来创建一个下面这样的年度日历。

在浏览器中显示一年的日历

创建上面的年度日历的代码如下。

 # 日历做成 --- (*1)
 import calendar
 lc = calendar.HTMLCalendar()
 body = lc.formatyear(2021, width=4)

 # 指定HTML的头部信息 --- (*2)
 html = """<html><head><style>
 table { padding: 8px; }
 th { border-bottom: 1px solid gray; }
 td { padding: 4px; vertical-align: top; }
 .sun { color: red; }
 .sat { color: blue; }
 </style></head><body>""" + body + """
 </body></html>"""

 # 保存文件 --- (*3)
 f = open("calendar2021.html", "wt")
 f.write(html)

简单介绍一下这段程序代码。

首先(* 1)部分。和之前的代码一样,生成了一年日历的HTML代码。

然后,在(* 2)部分中,给HTML代码指定了一些CSS样式。

然后,在(* 3)部分中,将HTML代码保存在文件中。

如上代码,你可以通过改变<style>标签中的定义,来得到您想要的日历的颜色和大小。

总结

今天,我们介绍了如何通过calendar模块来快速的创建日历,是不是很方便呢?最主要的是,您可以用HTMLCalendar来生成HTML代码,并且通过改变HTML代码的样式来制作您想要的风格的日历。是不是很酷呢。

还等什么,赶紧来尝试一下吧。

 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值