【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')