年龄检查器Python3 18+

苏丹

我需要在Pyhton3上安装一个程序,以检查用户是否为18岁以上。输入:出生日期。如果打印错误(格式错误),则以4种格式(25/12 / 2000、25-12-2000、25.12.2000、25_12_2000)输出:“欢迎使用系统”或“抱歉,当您18岁以上时复出”如果您需要我的愚蠢尝试:

from datetime import datetime, date

    def try_parsing_date(text):
        for fmt in ('%d/%m/%Y', '%d.%m.%Y', '%d-%m-%Y', '%d_%m_%Y'):
            try:
                return datetime.strftime(text,fmt)
            except ValueError:
                pass
        raise ValueError('no valid date format')
    dob  = input('Введите свой день рождения (дд/мм/гггг): ')
    try_parsing_date(dob)

也许用正则表达式处理它?

```re_age_checker= "^(0[1-9]|[12][0-9]|3[01])[- \/.,_](0[1-9]|1[012])[- \/.,_](19|20)\d\d"```
阿玛利

您的尝试是一个不错的开始,但您却strftimestrptime改变它。

也许用正则表达式处理它?

不建议这样做。完成上述更改后,我们可以使用函数的结果try_parsing_date来计算18岁生日,并将其与今天的日期进行比较:

dt = try_parsing_date(dob)
import time
# compute the 18th birthday:
d = date.fromtimestamp(time.mktime((dt.year+18, dt.month, dt.day, *(0,)*6)))
if d <= date.today():
    print("welcome to system")
else:
    print("sorry comeback when you will be 18+")

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章