简简单单的用 Python 撸一个计算年龄的工具网页,不用对前端特别熟悉,只要专注于工具的逻辑,其他都交给 Python 吧。
1. 总体结构
实现了 3 个功能
2. 正确地计算年龄
输入 2000-01-01
# 用户输入的生日
now = datetime.strptime(B, "%Y-%m-%d")
# 输出现在年龄
delta_y = rd(datetime.now(), now).years
delta_m = rd(datetime.now(), now).months
delta_d = rd(datetime.now(), now).days
3. 警告日期格式有问题
日期格式不正确,比如为 2000/01/01
# 检查日期格式
try:
val = datetime.strptime(B, "%Y-%m-%d")
except:
# 如果格式错误,警告提示
put_error("警告:日期格式不正确")
time.sleep(3)
continue
4. 输入日期比现在时间大
比如为 2022-01-29,显示输入时间和现在时间,进行提示
# 日期比现在时间大
put_warning(
f"找不到结果,现在日期是"
f"{date[0]}-{date[1]}-{date[2]}, "
f"你不能使用"
f"{in_date[0]}-{in_date[1]}-"
f"{in_date[2]}这个日期。")
5. 需要的第三方模块
我们只需要关注 python 代码,pywebio 会自动生成网页
6. 完整的代码
# 计算年龄
from dateutil.relativedelta import relativedelta as rd
# 获取时间、格式化时间
from datetime import datetime
# 用来延迟
import time
# 用来生成网页
from pywebio.input import *
from pywebio.output import *
while True:
clear() # 每次循环先清空所有数据
# 标题
put_html(""left"">"
"年龄计算器")
# 输入生日日期
B = input(
"",
placeholder="你的生日,格式为 yyyy-mm-dd"
)
# 检查日期格式
try:
val = datetime.strptime(B, "%Y-%m-%d")
except:
# 如果格式错误,警告提示
put_error("警告:日期格式不正确")
time.sleep(3)
continue
# 解析输入的日期
in_date = B.split('-')
# 获取现在时间
date = datetime.now().strftime("%Y-%m-%d")
# 解析现在的日期
date = date.split('-')
# 转化为数字列表
in_date = [int(i) for i in in_date]
date = [int(i) for i in date]
if in_date <= date:
# 用户输入的生日
now = datetime.strptime(B, "%Y-%m-%d")
# 输出现在年龄
delta_y = rd(datetime.now(), now).years
delta_m = rd(datetime.now(), now).months
delta_d = rd(datetime.now(), now).days
popup("你的年龄", [put_html(
"%s 岁
%s 个月
%s 天" % (delta_y, delta_m, delta_d)),
put_buttons(
['点击关闭'],
onclick=lambda
_: close_popup())],
implicit_close=True)
else:
# 日期比现在时间大
put_warning(
f"找不到结果,现在日期是"
f"{date[0]}-{date[1]}-{date[2]}, "
f"你不能使用"
f"{in_date[0]}-{in_date[1]}-"
f"{in_date[2]}这个日期。")
time.sleep(3)
clear()
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
前端
+关注
关注
1文章
192浏览量
17749 -
网页
+关注
关注
0文章
73浏览量
19316 -
python
+关注
关注
56文章
4793浏览量
84631
发布评论请先 登录
相关推荐
图片转PCB图的小工具
画PCB的时候发现的一个不错的小工具,可以将图片转成PCB图。大家还有什么好用的小工具,大家积极分享一下O(∩_∩)O~~btp2.rar (110.08 KB )
发表于 05-08 06:36
用UcguiBuilder4制作的CHECKBOX小工具例程分享!
用UcguiBuilder4制作的CHECKBOX小工具例程,好用,值得推广!注意换肤前后有差异。EMWIN实验17+ CHECKBOX小工具.rar (3.82 MB )
发表于 07-29 22:56
C语言注释删除小工具是什么
C语言注释删除小工具是一款删除c语言注释并实现编译的工具,如果你喜欢这款软件,就快来IT猫扑下载吧!C语言注释删除小工具介绍很多编译器不支持中文注释,特别是日系的单片机编译器,这是一个C语言注释删除
发表于 07-14 08:39
分享一份网友学习python时编写的一个小工具
EETOP网友很多是IC设计相关的,特别是从事IC验证的,经常会编写脚本,以前用的最多的应该是Perl语言,随着python的流行,也有很多人开始学习Python.
今天分享一份网友学习
评论