学会python——用python编写一个电子时钟(python实例十七)

news2024/11/23 2:24:21

目录

1.认识Python

2.环境与工具

2.1 python环境

2.2 Visual Studio Code编译

3.电子时钟程序

3.1 代码构思

3.2代码实例

3.3运行结果

4.总结


1.认识Python

Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。

Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字或标点符号,它具有比其他语言更有特色的语法结构。

2.环境与工具

2.1 python环境

在Windows上使用命令行窗口查看所安装的python版本

python --version

2.2 Visual Studio Code编译

Visual Studio Code是一款由微软开发且跨平台的免费源代码编辑器。该软件以扩展的方式支持语法高亮、代码自动补全、代码重构功能,并且内置了命令行工具和Git 版本控制系统。

3.电子时钟程序

3.1 代码构思

使用get_week_day()函数取出星期的索引,然后使用show_time函数获取当前时间,并且每隔一段时间进行show_time()函数的更新。

3.2代码实例

import tkinter as tk
import time
import datetime

# 按照日期返回星期数
def get_week_day(date):
    # 用一个字典建立对应关系
    week_dict = {
        0: '星期一',
        1: '星期二',
        2: '星期三',
        3: '星期四',
        4: '星期五',
        5: '星期六',
        6: '星期日'
    }
    day = date.weekday()
    return week_dict.get(day)

# 每一秒修改一下clock的显示
def show_time():
    # 获取当前日期和星期
    now = datetime.datetime.now()
    week_day = get_week_day(now)
    str_date = now.strftime('%Y年%m月%d日') + ' ' + week_day
    # 获取当前时间
    str_time = now.strftime('%H:%M:%S %p')
    date_str.set(str_date)
    time_str.set(str_time)
    # 每隔一秒调用一次show_time函数
    clock_label.after(1000, show_time)

if __name__ == '__main__':
    # 创建主窗口
    win = tk.Tk()
    # 设置主窗口的标题
    win.title('电子时钟')
    # 设置主窗口的尺寸
    win.geometry('400x150')
    # 创建StringVar对象
    time_str = tk.StringVar()
    date_str = tk.StringVar()
    # 创建标签
    date_label = tk.Label(win, font=('黑体', 18), fg='blue', textvariable=date_str)
    clock_label = tk.Label(win, font=('黑体', 48), fg='red', textvariable=time_str)
    # 布局标签
    date_label.pack(anchor='center')
    clock_label.pack(anchor='center')
    # 显示时间
    show_time()
    # 运行主循环
    win.mainloop()

3.3运行结果

4.总结

自己做一个电子时试试呀!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1890149.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

偏微分方程笔记

极小位能原理: C 2 C^2 C2 是一个集合符号,表示所有二阶连续可微函数的集合 弱导数 C 2 C^2 C2 是一个集合符号,表示所有二阶连续可微函数的集合。 C 0 ∞ ( I ) C^{\infty}_0(I) C0∞​(I)表示于 I I I上无穷可微,且在端点a&…

硅纪元AI应用推荐 | 国产创作引擎即梦AI助力创作者探索创作新境界

“硅纪元AI应用推荐”栏目,为您精选最新、最实用的人工智能应用,无论您是AI发烧友还是新手,都能在这里找到提升生活和工作的利器。与我们一起探索AI的无限可能,开启智慧新时代! 在人工智能快速发展的今天,各…

吉利银河L6 AQS空气质量监控系统

结论 顶配才有AQS 开启空调且auto模式 则默认开启AQS 无法关闭AQS AQS的作用 银河L6 AQS触发 和 图标 AQS官方配置参数 官方文档 吉利用户手册

【教程】lighttpd配置端口反向代理

转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn] 如果本文帮助到了你,欢迎[点赞、收藏、关注]哦~ 1、修改配置文件: sudo vim /etc/lighttpd/lighttpd.conf2、先添加mod_proxy: 3、然后添加端口映射: 4、保存&…

Java后端每日面试题(day2)

目录 Session和Cookie的关系Cookie与Session的区别JWT 由哪些部分组成?如何防止 JWT 被篡改?JWT 的特点 Session和Cookie的关系 Session和Cookie都可以用来实现跟踪用户状态,而二者是关系的:Session的实现依赖于Cookie。 Session…

用网上抓取的天气的接口做了一个系统

这个接口数据太全了了,空气质量、雷达预报、小时预报、15天预报、实况、aqi排名,云量、预警、生活指数包圆了,数据接口如下图所示: 万年历 万年历接口 行政区划边界GEOJSON 国家统计局区划编码 全国城市区划编码经纬度 天气实况 …

C++基础(三):C++入门(二)

上一篇博客我们正式进入C的学习,这一篇博客我们继续学习C入门的基础内容,一定要学好入门阶段的内容,这是后续学习C的基础,方便我们后续更加容易的理解C。 目录 一、内联函数 1.0 产生的原因 1.1 概念 1.2 特性 1.3 面试题 …

Linux应用---内存映射

写在前面: 在进程间通信中,有一种方式内存映射。内存映射也是进程间通信的方式之一,其效率高,可以直接对内存进行操作。本节我们对内存映射进行学习,并结合案例进行实践。 1、基本理论 内存映射:是将磁盘文…

日期和时区

日期 时区 修改时区可分为两步 删除系统自带的 localtime 文件 rm -f /etc/localtime 将系统中内置的 Shanghai 文件软连接到 /etc/localtime中 sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

Softing助力工业4.0 | 通过OPC UA和MQTT访问SINUMERIK 840D CNC控制器数据

Softing uaGate 840D是用于采集西门子SINUMERIK 840D SL/PL CNC控制器数据的物联网网关,支持OPC UA服务器和MQTT发布功能。该网关提供对SINUMERIK 840D CNC控制器机床数据的访问,支持读取、处理重要的主轴和从轴数据,例如扭矩和功耗&#xff…

第一周题目总结

1.车尔尼有一个数组 nums ,它只包含 正 整数,所有正整数的数位长度都 相同 。 两个整数的 数位不同 指的是两个整数 相同 位置上不同数字的数目。 请车尔尼返回 nums 中 所有 整数对里,数位不同之和。 示例 1: 输入&#xff1a…

16:9横屏素材去哪里找?优秀的横屏视频素材资源网站分享

在这个视频内容快速发展的时代,寻找合适的视频素材变得尤为重要。以下是几个优秀的16:9横屏视频素材提供网站,无论您是视频制作新手还是资深专家,这些网站都能为您的视频项目增添光彩。 蛙学网 蛙学网作为视频创作者们广为人知的一个平台&am…

茗鹤 | 如何借助APS高级计划排程系统提高汽车整车制造的效率

在我们做了详尽的市场调研及头部汽车制造企业排程需求沟通后,我们发现尽管企业有很多的业务系统做支撑,在计划排程领域,所有的汽车制造总装厂仍旧使用人工“Excel”做排产规划,其中少部分也会借助MRP、第三方辅助排产工具。鉴于我…

科研与英文学术论文写作指南——于静老师课程

看到了一个特别棒的科研与英文学术论文写作指南,理论框架实例。主讲人是中科院信息工程研究所的于静老师。推荐理由:写论文和读论文或者讲论文是完全不一样的,即使现在还没有发过论文,但是通过于老师的课程,会给后续再…

使用 Ollama 时遇到的问题

题意: ImportError: cannot import name Ollama from llama_index.llms (unknown location) - installing dependencies does not solve the problem Python 无法从 llama_index.llms 模块中导入名为 Ollama 的类或函数 问题背景: I want to learn LL…

车载测试之-CANoe创建仿真工程

在现代汽车工业中,车载测试是确保车辆电子系统可靠性和功能性的关键环节。而使用CANoe创建仿真工程,不仅能够模拟真实的车辆环境,还能大大提升测试效率和准确性。那么,CANoe是如何实现这些的呢? 车载测试中&#xff0…

2024年7月3日 (周三) 叶子游戏新闻

老板键工具来唤去: 它可以为常用程序自定义快捷键,实现一键唤起、一键隐藏的 Windows 工具,并且支持窗口动态绑定快捷键(无需设置自动实现)。 卸载工具 HiBitUninstaller: Windows上的软件卸载工具 《魅魔》新DLC《Elysian Fields…

Flink 窗口触发器(Trigger)(一)

Flink 窗口触发器(Trigger)(一) Flink 窗口触发器(Trigger)(二) Flink的窗口触发器(Trigger)是流处理中一个非常关键的概念,它定义了窗口何时被触发并决定触发后的行为(如进行窗口数据的计算或清理)。 一、基本概念 …

node与npm安装教程

node与npm的下载安装教程: 文章目录 node与npm的下载安装教程:---Node.js 介绍NPM 介绍 一:下载(node与npm的安装包是在一起的)二:安装1:双击运行安装文件1-node-v14.15.0-x64.msi,点击下一步。…

区块链加载解析方法

一.区块链加载解析 对于数据的下载主要包括三种方式: 1.实现比特币网络协议,通过该协议和其他比特币全节点建立联系,然后同步区块数据。 2.通过比特币节点提供的API服务下载区块链数据。 3.通过blickchain.com提供的rest服务下载区块数据…