利用Python函數(shù)實(shí)現(xiàn)一個(gè)萬歷表完整示例
前言
大家可以根據(jù)格式化打印字符去調(diào)一下最后的輸出,不過有中文好像不好調(diào)整,可以換成星期的單詞,這樣應(yīng)該會(huì)好一點(diǎn),format()函數(shù)可以用來格式化打印字符,format()可以使用字符串去調(diào)用,也可以獨(dú)自使用。
可以點(diǎn)進(jìn)格式化打印字符了解一下哦
示例代碼
# 判斷是否閏年 def isleap(year): return year % 4 == 0 and year % 100 != 0 or year % 400 == 0 # 判斷月的天數(shù) 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年到輸入年份的總天數(shù) def total_days(year): s = 0 for i in range(1900,year): if isleap(i): s += 366 else: s += 365 return s # 1月到輸入月份的天數(shù) 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() # 開始函數(shù) def start(): while True: print('-------歡迎來到萬歷表查詢頁面-------') print('1.查詢某年的日歷\n2.查詢某年某月的日歷\n3.退出查詢') print('---------------------------------') n = int(input('請(qǐng)輸入你的操作:')) if n == 1: year = int(input('請(qǐng)輸入要查詢的年份:')) yearcalendar(year) elif n == 2: year = int(input('請(qǐng)輸入要查詢的年份:')) month = int(input('請(qǐng)輸入1-12:')) monthcalendar(year,month) elif n == 3: print('退出成功') break else: print('指令錯(cuò)誤,請(qǐng)重新輸入?。?!') if __name__ == '__main__': start()
總結(jié)
到此這篇關(guān)于利用Python函數(shù)實(shí)現(xiàn)一個(gè)萬歷表的文章就介紹到這了,更多相關(guān)Python函數(shù)實(shí)現(xiàn)萬歷表內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python在Matplotlib圖中顯示中文字體的操作方法
這篇文章主要介紹了Python在Matplotlib圖中顯示中文字體的方法,本篇主要針對(duì)在Ubuntu系統(tǒng)中,matplotlib顯示不了中文的問題,尤其是在無法安裝系統(tǒng)字體的情況下,解決Python繪圖時(shí)中文顯示的問題。需要的朋友可以參考下2019-07-07關(guān)于python簡單的爬蟲操作(requests和etree)
這篇文章主要介紹了關(guān)于python簡單的爬蟲操作(requests和etree),文中提供了實(shí)現(xiàn)代碼,需要的朋友可以參考下2023-04-04python并發(fā)編程多進(jìn)程 互斥鎖原理解析
這篇文章主要介紹了python并發(fā)編程多進(jìn)程 互斥鎖原理解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08Python中逗號(hào)轉(zhuǎn)為空格的三種方法
本文介紹了Python中將逗號(hào)轉(zhuǎn)換為空格的三種方法,包含使用replace函數(shù)、使用split函數(shù)、使用正則表達(dá)式,具有一定的參考價(jià)值,感興趣的可以了解一下2024-02-02Pandas創(chuàng)建DataFrame提示:type?object?'object'?has?n
Pandas數(shù)據(jù)幀(DataFrame)是二維數(shù)據(jù)結(jié)構(gòu),它包含一組有序的列,每列可以是不同的數(shù)據(jù)類型,這篇文章主要給大家介紹了關(guān)于Pandas創(chuàng)建DataFrame提示:type?object?‘object‘?has?no?attribute?‘dtype‘的解決方案,需要的朋友可以參考下2023-02-02python3 實(shí)現(xiàn)一行輸入,空格隔開的示例
今天小編就為大家分享一篇python3 實(shí)現(xiàn)一行輸入,空格隔開的示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-11-11使Python代碼流暢無縫連接的鏈?zhǔn)秸{(diào)用技巧
鏈?zhǔn)秸{(diào)用是一種編程風(fēng)格,它允許將多個(gè)方法調(diào)用連接在一起,形成一個(gè)連貫的操作鏈,在Python中,鏈?zhǔn)秸{(diào)用常常用于使代碼更簡潔、易讀,尤其在處理數(shù)據(jù)處理和函數(shù)式編程中應(yīng)用廣泛2024-01-01