.编写一个python程序,要求输入本人的姓名和身份证号码,计算本人的年龄并输出。程序的输出格式:“姓名-出生日期-该年年份-实际年龄”
时间: 2024-10-23 22:20:51 浏览: 34
当然可以,下面是一个简单的Python程序,它会通过输入的身份证号码来计算用户的实际年龄。请注意,这个示例假设输入的身份证号码是合法的,并且年龄是按照当前年份计算得出的:
```python
from datetime import datetime
def calculate_age():
# 获取当前年份
current_year = datetime.now().year
# 要求用户输入姓名和身份证号码
name = input("请输入您的姓名:")
id_number = input("请输入您的身份证号码:")
# 中国大陆的身份证号码结构是18位,第7到14位代表出生年月日
birth_date_str = id_number[6:14]
birth_date = datetime.strptime(birth_date_str, '%Y%m%d')
# 计算出生日期对应的实际年龄
age = current_year - birth_date.year - ((current_year % 100) < (birth_date.year % 100))
# 如果出生月份大于当前月份,需要加一岁
if birth_date.month > datetime.now().month or (birth_date.month == datetime.now().month and birth_date.day >= datetime.now().day):
age += 1
output_format = f"{name}-{''.join(['{:02d}'.format(int(digit)) for digit in birth_date_str])}-{birth_date.year}-{age}"
print(output_format)
# 运行函数
calculate_age()
```
阅读全文