没有注释的源代码
import datetime
sName = input('请输入您的名字:')
birthday_year = int(input('请输入您的出生年份:'))
birthday_month = int(input('请输入您的出生月份:'))
birthday_day = int(input('请输入您的出生日期:'))
today = datetime.date.today()
current_year = today.year
this_year_birthday = datetime.date(current_year, birthday_month, birthday_day)
if today < this_year_birthday:
age = current_year - birthday_year - 1
next_birthday_days = (this_year_birthday - today).days
print(f'您好,{sName},您今年的年龄是{age}。您的生日还有{next_birthday_days}天。')
elif today == this_year_birthday:
age = current_year - birthday_year
print(f'生日快乐,{sName}! 您今年{age}岁了。')
else:
age = current_year - birthday_year
days_since_birthday = (today - this_year_birthday).days
print(f'您好,{sName},您今年的年龄是{age}。您的生日已经过去{days_since_birthday}天了。')
标有注释的源代码
import datetime #导入datetime模块用来获得当前的年份,月份,日期
sName = input('请输入您的名字:')#input输入语句
birthday_year = int(input('请输入您的出生年份:'))
birthday_month = int(input('请输入您的出生月份:'))
birthday_day = int(input('请输入您的出生日期:'))
today = datetime.date.today() #调用模块返回当前日期的date类中的today()方法,其格式为(YYYY-MM-DD)
current_year = today.year #调用日期的年份部分
# 计算今年的生日日期
this_year_birthday = datetime.date(current_year, birthday_month, birthday_day) #创建了一个指定年、月、日的date对象
# 判断是否已经过了今年的生日,使用if-elif-else多条件判断语句
if today < this_year_birthday: #还没过生日
# 还没过生日,年龄为当前年份减去出生年份再减1
age = current_year - birthday_year - 1
next_birthday_days = (this_year_birthday - today).days
print(f'您好,{sName},您今年的年龄是{age}。您的生日还有{next_birthday_days}天。')
elif today == this_year_birthday: #今天恰好是生日
# 已经过了生日或今天是生日,年龄为当前年份减去出生年份
age = current_year - birthday_year
print(f'生日快乐,{sName}! 您今年{age}岁了。')
else: #已经过了生日
age = current_year - birthday_year
days_since_birthday = (today - this_year_birthday).days
print(f'您好,{sName},您今年的年龄是{age}。您的生日已经过去{days_since_birthday}天了。')

3755

被折叠的 条评论
为什么被折叠?



