python - 在日历上画几天
解决方案
正如评论中所建议的,您可以使用标签来标记星期日。您用于calendar.month(year, month, 2, 1)
显示日历,因此您的列是两个字符宽并由空格分隔,因此星期日列从字符 18 开始。第一行是月份名称,第二行是工作日,因此您需要开始添加标签第 3 行。
这是代码:
import calendar
from tkinter import Text
text = Text()
text.pack()
# configure tag to change the background and foreground of sundays
text.tag_configure("sunday", background='light grey', foreground='red')
# display calendar
month = calendar.month(2020, 2, 2, 1)
text.insert('1.0', month)
# add the sunday tag to sundays
for line in range(3, len(month.splitlines()) + 1):
text.tag_add('sunday', f"{line}.18", f"{line}.20")
顺便说一句,如果您希望日历与直列很好地对齐,就像我的屏幕截图一样,您需要使用等宽字体。
推荐阅读
- onsen-ui - SortableJS 无法在桌面上使用 Onsen UI
- android - 一旦安装了带电容器的 BackgroundGeolocation 插件,就无法在 Android 上构建 Ionic App
- flutter - 删除 Flutter 中的 Switch Toggle 填充
- c - C中指针与数组的关系
- html - Chrome 计算错误的输入颜色
- concurrency - 如何在微服务中使用 ReentrantReadWriteLock 处理死锁
- javascript - 组件功能在本机反应中无法识别此运算符
- android - Robolectric 测试在终端中失败,在 Android Studio 中成功
- performance - 为什么 tensorflow 中稀疏运算的 GPU 内核这么少?
- javascript - 如何将两个正则表达式与 Angular 8 中的 Pipe 结合在一个模式中?