我正在练习创建一个年龄计算器,根据给定的出生日期计算年龄。在
但是它并没有按照我想要的方式工作。我想向用户显示年份中的年龄,例如19岁,当他们的年龄是19岁,而月小于6岁时,如果这个月超过6岁,我想在这个例子中19+1的年龄上加1。在
有人能用更好的方式用相同的概念创建同一个程序吗?请加上一些解释,以便我更容易理解。在
我是python初学者,请原谅我糟糕的代码和糟糕的英语。提前谢谢你的帮助。在
from datetime import date
Doby,Dobm,Dobd =input("enter your DOB : i.e year,month,days 1999,02,08 : ").split(",")
born = date(year = int(Doby) , month= int(Dobm) , day= int(Dobd))
today = date.today()
age = today.year - born.year
condition = today.month - born.month
if condition >= 6 :
age += 1
elif condition <= -6 :
age -= 1
print(age)
我从'age'中减去int(age)得到age的小数位数。在
然后检查小数部分是否大于0.5,并相应地设置“年龄”。在
^{2}$我认为这很管用。在
这是你的职责
这里有几个例子
^{2}$请输入您的出生日期为mm-dd-yyyy:5-16-1976
^{2}$第一个月,第44年
44岁
请输入您的出生日期为mm-dd-yyyy:7-16-1976
^{2}$第11个月,第43年
44岁
请输入您的出生日期为mm-dd-yyyy:2-16-1977
第4个月,第43年
43岁
.toordinal()
将日期时间对象转换为自1月1日起的天数。在实例方法
.strftime()
将字符串转换为datetime对象,前提是存在格式指令datetime(“%m-%d-%Y”)。由于您是一个初学者,我确保使用python标准库包,不是因为numpy太高级了,而是因为标准库包是高效的、伟大的和被忽视的。
你可以用一年中没有天数来除法,然后四舍五入(四舍五入)得到想要的结果。下面的代码应该可以工作。在
输出:
^{2}$相关问题 更多 >
编程相关推荐