1 #返回简单值 2 def get_formatted_name(first_name,last_name): 3 """返回整洁的名字""" 4 full_name = first_name + ‘ ‘ + last_name 5 return full_name.title() #将首字母大写 6 7 musician = get_formatted_name(‘jim‘,‘harry‘) 8 print(musician)
执行结果:
Jim Harry
什么叫参数可选,就是在调用函数时,如果形参中定义的值在函数调用时并不存在,那么怎么要实参可选呢?就是把形参定义一个默认值,这个默认值为空即可。
1 #实参可选 2 def get_formatted_name(first_name,last_name,middle_name = ‘‘): 3 """返回整洁的名字""" 4 if middle_name: 5 full_name = first_name + ‘ ‘ + middle_name + ‘ ‘+ last_name 6 else: 7 full_name = first_name + " " + last_name 8 return full_name.title() 9 10 musician = get_formatted_name(‘jim‘,‘harry‘) 11 print(musician) 12 musician = get_formatted_name(‘jim‘,‘harry‘,‘coo‘) 13 print(musician)
执行结果:
Jim Harry
Jim Py Harry
函数可以返回任意值,包括列表、字典等复杂的数据结构
1 #返回字典 2 def get_formatted_name(first_name,last_name): 3 """返回整洁的名字""" 4 full_name = {‘first‘:first_name,‘last‘:last_name} 5 return full_name 6 7 musician = get_formatted_name(‘jim‘,‘harry‘) 8 print(musician)
执行结果:
1 {‘last‘: ‘harry‘, ‘first‘: ‘jim‘}
还可以增加年纪等信息
1 #拓展,增加年纪等信息 2 def get_formatted_name(first_name,last_name,age = ‘‘): 3 """返回整洁的名字""" 4 person = {‘first‘:first_name,‘last‘:last_name} 5 if age: 6 person[‘age‘] = age 7 return person 8 musician = get_formatted_name(‘jim‘,‘harry‘,age = ‘27‘) 9 print(musician)
执行结果:
1 {‘age‘: ‘27‘, ‘last‘: ‘harry‘, ‘first‘: ‘jim‘}
函数可以结合之前学过的while循环进行使用,让人机交互成为可能。
#结合使用函数和while循环 def get_formatted_name(first_name,last_name): """返回整洁的名字""" full_name = first_name + ‘ ‘ + last_name return full_name while True: print("\nPlease inter your name?") print("inter q to quit!") f_name = input(‘First name :‘) if f_name == ‘q‘: break l_name = input(‘Last name:‘) if l_name == ‘q‘: break musician = get_formatted_name(f_name,l_name) print(musician)
6、传递任意数量的实参
7、将函数存储在模块中
原文:https://www.cnblogs.com/aszeno/p/10386149.html