【Python基礎】函數的返回
- 2020 年 1 月 1 日
- 筆記
本文標識 : P00021採藥
本文編輯 : 採藥
編程工具 : Python
閱讀時長 : 5分鐘
很多時候,函數並非直接輸出,相反,它可以處理一些數據,並返回一個值或者一組值,稱之為返回值。
返回簡單值
我們定義一個函數,接受姓和名,然後返回完整的姓名。
def get_full_name(first_name,last_name): full_name = first_name + " " + last_name return full_name.title() name = get_full_name('jimi','alex') print(name)
輸出結果:
Jimi Alex
返回字典
def build_person(first_name,last_name): person = {"first":first_name,"last":last_name} return person name = build_person('jimi','alex') print(name)
輸出結果:
{'last': 'alex', 'first': 'jimi'}
結合使用函數和while循環
這裡我們嘗試用更正規的方式跟用戶打招呼。
def get_formatted_name(first_name,last_name): full_name = first_name + " " + last_name return full_name.title() while True: print("nPleast tell me your name: ") print("(enter 'q' to quit)") f_name=input("First_name: ") if f_name =='q': break l_name=input("Last_name: ") if l_name =='q': break formatted_name = get_formatted_name(f_name,l_name) print("nHello, " + formatted_name + "!")
首先我們定義了一個姓名處理函數,然後讓用戶輸入姓名,然後跟用戶打招呼,並且設置了退出循環的操作。
輸出結果:
Pleast tell me your name: (enter 'q' to quit) First_name: eric Last_name: matthes Hello, Eric Matthes! Pleast tell me your name: (enter 'q' to quit) First_name: q
傳遞列表
我們有一個列表,列表中都是用戶的姓名,我們需要用上述的greet_user()函數給每個用戶打招呼。
def greet_user(names): for name in names: msg = "Hello, " + name.title() + "!" print(msg) usernames = ['tom','bob','ty'] greet_user(usernames)
輸出結果:
Hello, Tom! Hello, Bob! Hello, Ty!
其實我們只需要在定義函數的時候稍加改動就ok啦。
傳遞任意數量的實參
def greet_user(names): for name in names: msg = "Hello, " + name.title() + "!" print(msg) usernames = ['tom','bob','ty'] greet_user(usernames)
形參*toppings,星號是讓python創建一個名為toppings的空白元組,並將接受的所有值都存入這個元組。
輸出結果:
('pepperoni',) ('green tea', 'cheese', 'apple')