8.3.1.返回简单值
#接受名和姓并返回整洁的姓名
def get_formatted_name(first_name,last_name):
"""返回整洁的姓名"""
full_name=first_name+‘ ‘+last_name
return full_name.title()
mussician=get_formatted_name("jimi","hendrix")
print(mussician)
>>>
==================== RESTART: D:/python学习/第8章 函数/8.3.1.py ====================
Jimi Hendrix
>>>
8.3.2 让实参变成可选的
以上实例扩展:使其还可以处理中间名。
#接受名、中间名和姓并返回整洁的姓名
def get_formatted_name(first_name,middle_name,last_name):
"""返回整洁的姓名"""
full_name=first_name+‘ ‘+middle_name+‘ ‘+last_name
return full_name.title()
mussician=get_formatted_name("join","lee","hooker")
print(mussician)
>>>
==================== RESTART: D:/python学习/第8章 函数/8.3.2.py ====================
Join Lee Hooker
>>>
如果中间名变成可选,可给实参middle_name指定一个默认值(空字符串),并将其移到形参列表的末尾,在调用函数时若没有提供中间名则使用默认值。
#接受名、中间名和姓并返回整洁的姓名
"""
如果中间名变成可选,可给实参middle_name指定一个默认值(空字符串),
并将其移到形参列表的末尾,在调用函数时若没有提供中间名则使用默认值。
"""
def get_formatted_name(first_name,last_name,middle_name=‘ ‘):
"""返回整洁的姓名"""
full_name=first_name+‘ ‘+middle_name+‘ ‘+last_name
return full_name.title()
#不提供中间名
mussician=get_formatted_name("join","hooker")
print(mussician)
#提供中间名
mussician=get_formatted_name("join","lee","hooker")
print(mussician)
>>>
=================== RESTART: D:/python学习/第8章 函数/8.3.2l.py ===================
Join Hooker
Join Hooker Lee
>>>
8.3.3 返回字典
函数可返回任何类型的值,包括列表和字典等复杂的数据。
def build_person(first_name,last_name):
"""返回一个字典,其中包含有关一个人的信息"""
person={"first":first_name,"last":last_name}
return person
musician=build_person("jimi","hendrix")
print(musician)
>>>
==================== RESTART: D:/python学习/第8章 函数/8.3.3.py ====================
{‘last‘: ‘hendrix‘, ‘first‘: ‘jimi‘}
>>>
也可以有可选形参:
#可以增加可选形参(age=" ")
def build_person(first_name,last_name,age=""):
"""返回一个字典,其中包含有关一个人的信息"""
person={"first":first_name,"last":last_name}
if age:
person[‘age‘]=age
return person
#有可选形参age
musician=build_person("jimi","hendrix",age=27)
print(musician)
print()
#无可选形参age
musician=build_person("jimi","hendrix")
print(musician)
>>>
=================== RESTART: D:/python学习/第8章 函数/8.3.3l.py ===================
{‘last‘: ‘hendrix‘, ‘first‘: ‘jimi‘, ‘age‘: 27}
{‘last‘: ‘hendrix‘, ‘first‘: ‘jimi‘}
>>>
8.3.4 结合使用函数和while循环
#结合使用while循环,以更正规的方式问候用户
def get_formatted_name(first_name,last_name):
"""返回整洁的姓名"""
full_name=first_name+‘ ‘+last_name
return full_name.title()
#这个一个无限循环!
while True:
print("\nPlease tell me you name:")
f_name=input("First name:")
#如果输入q退出循环
if f_name=="q":
break
#如果输入q退出循环
l_name=input("Last name:")
if l_name=="q":
break
format_name=get_formatted_name(f_name,l_name)
print("\nHello,"+format_name+"!")
运行结果:
>>>
==================== RESTART: D:/python学习/第8章 函数/8.3.4.py ====================
Please tell me you name:
First name:zhang
Last name:san
Hello,Zhang San!
Please tell me you name:
First name:li
Last name:si
Hello,Li Si!
Please tell me you name:
First name:wang
Last name:q
>>>
原文:https://www.cnblogs.com/ylzchs/p/14288643.html