使用Python函式寫乙個萬曆表

2021-10-16 22:17:05 字數 2963 閱讀 3737

大家可以根據格式化列印字元去調一下最後的輸出,不過有中文好像不好調整,可以換成星期的單詞,這樣應該會好一點,format()函式可以用來格式化列印字元,format()可以使用字串去呼叫,也可以獨自使用。

可以點進格式化列印字元了解一下哦

# 判斷是否閏年

defisleap

(year)

:return year %4==

0and year %

100!=

0or year %

400==

0# 判斷月的天數

defmonth_days

(year,month)

:if month in[1

,3,5

,7,8

,10,12

]:return

31if month ==2:

if isleap(year)

:return

29else

:return

28return

30# 2023年到輸入年份的總天數

deftotal_days

(year)

: s =

0for i in

range

(1900

,year)

:if isleap(i)

: s +=

366else

: s +=

365return s

# 1月到輸入月份的天數

defdays

(year,month)

: s =

0for i in

range(1

,month)

: s += month_days(year,i)

return s

# 獲取某年某月的日曆

defmonthcalendar

(year,month)

: total = total_days(year)

+ days(year, month)

a = total %

7print

('星期日'

.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 =

0for i in

range(0

, month_days(year, month)

+ a +1)

:if i <= a:

print

(format

(' '

,'10'

), end='')

count +=

1else

:print

(format

(str

(i - a)

,'^10'

), end='')

count +=

1if count ==7:

count =

0print()

print()

# 輸出某年一年的日曆

defyearcalendar

(year)

:for i in

range(1

,13):

print

(f'月:'

) monthcalendar(year,i)

print()

# 開始函式

defstart()

: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(

)

自行演示哦

利用Python函式實現乙個萬曆表完整示例

大家可以根據格式化列印字元去調一下最後的輸出,不過有中文好像不好調整,可以換成星期的單詞,這樣應該會好一點,format 函式可以用來格式化列印字元,format 可以使用字串去呼叫,也可以獨自使用。可以點進格式化列印字元了解一下哦 判斷是否閏年 def isleap year return yea...

讀《萬曆十五年》和《乙個廣告人的自白》

黃仁宇的 萬曆十五年 很有趣 中國的衰落深植於社會構建 經濟形式 意識形態和上層建築中,非一人一事所能改變。農業經濟遠遠落後於商業經濟,而依靠道德層面來維持統治和社會的穩定有許多技術上的問題無法解決,皇帝只是乙個職位,最後還通過怠工來對抗體制。大歷史觀提供了看歷史不同層次的思路。看奧格威 乙個廣告人...

讀《萬曆十五年》和《乙個廣告人的自白》

黃仁宇的 萬曆十五年 很有趣 中國的衰落深植於社會構建 經濟形式 意識形態和上層建築中,非一人一事所能改變。農業經濟遠遠落後於商業經濟,而依靠道德層面來維持統治和社會的穩定有許多技術上的問題無法解決,皇帝只是乙個職位,最後還通過怠工來對抗體制。大歷史觀提供了看歷史不同層次的思路。看奧格威 乙個廣告人...