""" 一、输入一串身份证信息,提取用户的出生年月日 注:中国目前采用的是18位身份证号,其第7-10位数字是出生年,11-12位是出生月份,13-14是出生日期。 例如:用户输入的信息为: 440055199706018899 打印的出生年月日应该为:19970601 二、让用户输入姓名以及身份证号,输出这个用户的年龄信息 例如:用户输入的姓名为: 流木 身份证号为:440055199706018899 打印信息为:XX同学今年26岁了 """ # 作业1 ID_Number_1 = input("请输入您的身份证号码: ") print(ID_Number_1[6:14]) # 作业2 Name_2 = input("请输入您的名字: ") ID_Number_2 = input("请输入您的身份证号码: ") Year = ID_Number_2[6:10] Month_Day = ID_Number_2[10:14] Age = 2024-int(Year)-bool(int(Month_Day) > int("0302")) print(f"{Name_2}同学今年{Age}岁了")
老师的答案还是标准答案啊:如下
""" 一、输入一串身份证信息,提取用户的出生年月日 注:中国目前采用的是18位身份证号,其第7-10位数字是出生年,11-12位是出生月份,13-14是出生日期。 例如:用户输入的信息为: 440055199706018899 打印的出生年月日应该为:19970601 分析: 1、输入 input() 2、需要进行操作 变量接收 3、操作内容是提取(索引) 不需要计算(不用数值) 保留字符串属性,不需要转化 """ # user_id = input("请输入你的身份证信息:") # # 拿出生日期 年月日 7~14 # year = user_id[6:10] # mouth = user_id[10:12] # day = user_id[12:14] # # 打印出生年月日 xx年xx月xx日 # print(f"出身日期为:{year}年{mouth}月{day}日") """ 二、让用户输入姓名以及身份证号,输出这个用户的年龄信息 例如:用户输入的姓名为: 流木 身份证号为:440055199706018899 打印信息为:XX同学今年26岁了 先拿取用户出生信息 再 计算 索引拿去比较方便,推荐保留字符串类型 取出出生日期后,在将出生日期转为数值类型进行计算 """ # # # 1、输入用户信息 # name = input("请输入你的姓名") # user_id = input("请输入你的身份证信息:") # # 2、获取出生年月日 获取到的也是字符串 # date = int(user_id[6:14]) # # 3、计算年龄 当前时间-出生日期 # age = (20240304 - date) // 10000 # 以取整的方式保留26 # print(f"{name}今天{age}岁了") # 取整的方式可以帮助我们只保留整数的前几位 # 方式 当前的数 // 10 ** (剩余数的位数) # print(123456789 // 10 ** 8) # print(123456789 // 10 ** 3) # import datetime # print(datetime.datetime.now()) # print(datetime.date.today())