python - Python 倒计时,但在年、月、周、日、小时、分钟、秒
问题描述
我想以倒计时的形式显示我的一生。不幸的是,Python datetime 只允许几天。并且无法编程转换
这是我尝试过的:
#!/usr/bin/env python3
import time
import datetime
from dateutil.relativedelta import relativedelta
from datetime import timedelta
while True:
lebenszeit = datetime.datetime(2085,7,6) - datetime.datetime.now()
jahr = str(int((lebenszeit.days)/365.25))
monate = str('%0.2d' %(int((((lebenszeit.days)*365)-int((lebenszeit.days)/365))*12)))
tage = str('%0.2d' %(int(((((lebenszeit.days)/365)-int((lebenszeit.days)/365))*12)-((((lebenszeit.days)/365)-int((lebenszeit.days)/365))*12)*30)))
print(jahr+"."+monate+"."+tag)
i = i+1
如您所见,非常复杂...
我想要一个看起来像这样的倒计时(年、月、周、天、小时、分钟、秒):
68.02.04.29.07.40.44
解决方案
这就是我的做法。请注意,“月”是近似值,假设每月有 30 天。仅使用“周”会更准确。
import time
import datetime
from datetime import timedelta
lebenszeit = datetime.datetime(2085,7,6) - datetime.datetime.now()
alldays = lebenszeit.days
jahr = int((alldays)/365.25)
alldays -= int(jahr * 365.25)
months = int((alldays)/30.0)
alldays -= months * 30
weeks = int((alldays)/7.0)
alldays -= weeks * 7
days = alldays
print(f"{jahr}.{months:02d}.{weeks:02d}.{days:02d}")
推荐阅读
- python - xml setAttribute 引发错误 - NodeList 对象没有属性 setAttribute
- javascript - 将状态属性分配给 React 中的常量
- aws-cli - 使用 AWS CLI 提取多个信息
- c - 当使用dirent.h(在Windows中)循环C中的文件夹并使用dr.memory检查.exe文件时,我得到UNINITIALIZED READ错误
- python - 如何使用 eval() 和 kivy TextInput?
- c# - 按列表中的索引设置类中的属性值
- javascript - 更新页面数据
- opengl-es - 如何从非常稀疏的纹理中快速输出点?
- shiny - 如何使用 rmarkdown 将带有嵌入图像的表格格式化为 pdf 格式?
- python - 合并 CSV 文件时遇到问题