Python程式設計基礎 函式式程式設計三步法

2021-09-14 04:51:54 字數 1638 閱讀 3843

函式式程式設計三步法:先有可執行的**,再加以邏輯實現,最後使用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 這也是純函式,但是是乙個沒有用的純函式,因為它沒有引數,唯一能做...