函式式程式設計三步法:先有可執行的**,再加以邏輯實現,最後使用def 定義函式名,這就完成乙個隨時可呼叫的函式。
需求:
# 7.編寫如下程式
"""a.使用者輸入1-7七個數字,分別代表周一到週日
b.如果輸入1~5,列印對應的「周一」~「週日」,如果輸入的數字是6或7,列印輸出「週末」
c.如果輸入0,退出迴圈
"""
思路:校驗使用者輸入是否正確,但是對控制字元只校驗了一次;輸入數字返回1-7輸出對應星期,0退出迴圈即結束,大於7與輸入其他內容等效,都會提示輸入有誤,請重新輸入!並且是個while迴圈判斷isdigit()直到輸入1-7數字字元正確為止,再轉換數字字元為int型別。迴圈使用者輸入1-7這樣的操作。
def digit_game(num_1):
"""a.使用者輸入1-7七個數字,分別代表周一到週日
b.如果輸入1~5,列印對應的「周一」~「週日」,如果輸入的數字是6或7,列印輸出「週末」
c.如果輸入0,退出迴圈
"""# 定義乙個列表,不可變型別,列出所有星期
list_3 = ("周一", "周二", "週三", "周四", "周五", "週末", "週末")
# 迴圈判斷校驗使用者輸入時候正確
while num_1.isdigit() != true:
num_1 = input("1輸入有誤,請輸入1-7範圍的任意數字:")
while int(num_1) > 7:
print("2輸入的值為{},不在1-7之間。".format(num_1))
num_1 = input("3請重新輸入1-7範圍的任意數字:")
while num_1.isdigit() != true:
num_1 = input("4輸入有誤,請輸入1-7範圍的任意數字:")
# 強制轉換為int型別
a = int(num_1)
while 1:
if a == 1 or a == 2 or a == 3 or a == 4 or a == 5 or a == 6 or a == 7:
print("今天{}".format(list_3[a - 1]))
if a <= 7:
num_1 = input("5請輸入1-7範圍的任意數字:")
while num_1.isdigit() != true:
num_1 = input("6輸入有誤,請輸入1-7範圍的任意數字:")
a = int(num_1)
elif a == 0:
print("0退出遊戲!")
break
else:
num_1 = input("7輸入有誤,請輸入1-7範圍的任意數字:")
while num_1.isdigit() != true:
num_1 = input("8輸入有誤,請輸入1-7範圍的任意數字:")
a = int(num_1)
continue
# 遊戲入口
num_1 = input("玩乙個輸入乙個數字對應星期幾的遊戲!\n請輸入1-7範圍的任意數字:")
# 呼叫方式,傳入引數
digit_game(num_1)
python基礎函式式程式設計(十七)
概念 包括lambda函式的程式設計 高階函式變成 print sum 1,2,3 def test x,f return f x x 1,2,3 print test x,sum lamda匿名函式 def test x,y return x 2 y 這個lamda實現的函式和上面的函式是等價的 ...
函式式程式語言python 函式式程式設計
函式是python內建支援的一種封裝,我們通過把大段 拆成函式,通過一層一層的函式呼叫,就可以把複雜任務分解成簡單的任務,這種分解可以稱之為面向過程的程式設計。函式就是面向過程的程式設計的基本單元。而函式式程式設計 請注意多了乙個 式 字 functional programming,雖然也可以歸結...
函式式程式設計基礎
這裡有乙個純函式示例 var z 10 function add x,y 注意add函式沒有去碰變數z,它沒有讀取z的值,也沒有儲存資料到z。它僅僅是讀取引數x和y,也就是它的輸入引數。再看另乙個函式 function justten 這也是純函式,但是是乙個沒有用的純函式,因為它沒有引數,唯一能做...