大家可以根據格式化列印字元去調一下最後的輸出,不過有中文好像不好調整,可以換成星期的單詞,這樣應該會好一點,format()函式可以用來格式化列印字元,format()可以使用字串去呼叫,也可以獨自使用。可以點進格式化列印字元瞭解一下哦
# 判斷是否閏年def isleap(year): return year % 4 == 0 and year % 100 != 0 or year % 400 == 0# 判斷月的天數def month_days(year,month): if month in [1,3,5,7,8,10,12]: return 31 if month == 2: if isleap(year): return 29 else: return 28 return 30# 1900年到輸入年份的總天數def total_days(year): s = 0 for i in range(1900,year): if isleap(i): s += 366 else: s += 365 return s# 1月到輸入月份的天數def days(year,month): s = 0 for i in range(1,month): s += month_days(year,i) return s# 獲取某年某月的日曆def monthcalendar(year,month): total = total_days(year) + days(year, month) a = total % 7 print('星期日'.center(8, ' '), end='') print('星期一'.center(8, ' '), end='') print('星期二'.center(8, ' '), end='') print('星期三'.center(8, ' '), end='') print('星期四'.center(8, ' '), end='') print('星期五'.center(8, ' '), end='') print('星期六'.center(8, ' '), end='') print() count = 0 for i in range(0, month_days(year, month) + a + 1): if i <= a: print(format(' ','10'), end='') count += 1 else: print(format(str(i - a),'^10'), end='') count += 1 if count == 7: count = 0 print() print()# 輸出某年一年的日曆def yearcalendar(year): for i in range(1,13): print(f'{i}月:') monthcalendar(year,i) print()# 開始函式def start(): while True: print('-------歡迎來到萬曆表查詢頁面-------') print('1.查詢某年的日曆\n2.查詢某年某月的日曆\n3.退出查詢') print('---------------------------------') n = int(input('請輸入你的操作:')) if n == 1: year = int(input('請輸入要查詢的年份:')) yearcalendar(year) elif n == 2: year = int(input('請輸入要查詢的年份:')) month = int(input('請輸入1-12:')) monthcalendar(year,month) elif n == 3: print('退出成功') break else: print('指令錯誤,請重新輸入!!!')if __name__ == '__main__': start()
對你有幫助的話點點贊支援哦!
最新評論