博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
输入( 年 ,月 )打印日历()
阅读量:4691 次
发布时间:2019-06-09

本文共 1631 字,大约阅读时间需要 5 分钟。

def is_leapyear( year ):     return True if year % 4 ==  0 and year % 100 !=  0 or year % 400 == 0 else False def days_year( year ):    return 366 if is_leapyear( year ) else 365 def days_month( year , month ):     l = [ 31 , 29 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 ]     u = [ 31 , 28 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 ]     return l[ month-1 ]if is_leapyear( year ) else u[ month-1 ] def get_week( year , month ):     days = 0     if ( 1990 <= year <= 2018 ) or ( 1 <= month <= 12 ) :         for y in range( 1990 , year ):             days += days_year( y )         for m in range( 1 , month ):             days += days_month( year , m )         return ( days + 1 ) % 7 def get_week( year , month ):    days = 0    if ( 1990 <= year <= 2018 ) or ( 1 <= month <= 12 ) :        for y in range( 1990 , year ):            days += days_year( y )        for m in range( 1 , month ):            days += days_month( year , m )        return ( days + 1 ) % 7 while True:    year , month = eval( input( ' Input year and month (year , month): ' ) )    days = 0    if ( 1990 <= year <= 2018 ) or ( 1 <= month <= 12 ):        print( '\t{}年{}月'.format(year,month) )        print( '\t日\t一\t二\t三\t四\t五\t六' )        for week in range( get_week( year , month ) ):            print( '\t'+' ',end='' )        for day in range( 1 , days_month( year , month ) + 1 ):            print( '\t{: <2}'.format( day ) , end='' )            if ( day + get_week( year , month ) ) % 7 == 0 or day == days_month( year , month ) :                print('')    else :        continue

 

转载于:https://www.cnblogs.com/yangking/p/10075678.html

你可能感兴趣的文章