#定义函数
def greet_user():
"""显示简单的问候语"""
print("Hello!")
greet_user()
#向函数传递信息
def greet_user(username):
"""显示简单的问候语"""
print("Hello, "+username.title()+"!")
greet_user('corey')
#位置实参
def describe_pet(animal_type,pet_name):
"""显示宠物的信息"""
print("\nI have a "+animal_type)
print("My "+animal_type+"'s name is "+pet_name.title())
describe_pet('hamster','harry')
#关键字实参
def describe_pet(animal_type,pet_name):
"""显示宠物的信息"""
print("\nI have a "+animal_type)
print("My "+animal_type+"'s name is "+pet_name.title())
describe_pet(animal_type='hamster',pet_name='harry')# 可以颠倒顺序
#默认值
def describe_pet(pet_name,animal_type='dog'):# 注意必选参数在前默认参数在后面
"""显示宠物的信息"""
print("\nI have a "+animal_type)
print("My "+animal_type+"'s name is "+pet_name.title())
describe_pet(pet_name='harry')
describe_pet('harry')
#函数返回值——return语句
def get_formatted_name(first_name,last_name):
"""返回整洁的姓名"""
full_name=first_name+" "+last_name
return full_name.title()
musician=get_formatted_name('jimi','handix')
print(musician)
#让实参变得可选
def get_formatted_name(first_name,last_name,middle_name=''):
"""返回整洁的姓名"""
if middle_name:
full_name=first_name+" "+middle_name+" "+last_name
else:
full_name=first_name+" "+last_name
return full_name.title()
musician=get_formatted_name('jimi','handix')
print(musician)
musician=get_formatted_name('john','hooker','lee')
print(musician)
#返回字典
def build_person(first_name,last_name):
"""返回一个字典其中包含有关一个的个人信息"""
person={'first':first_name,'last':last_name}
return person
musician=build_person('jimi','hendrix')
print(musician)
#结合使用函数以及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 your name:")
print("(Enter 'q' at any time 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)
#传递列表
def greet_user(names):
"""向列表中的每位用户都发出简单的问候"""
for name in names:
msg="Hello, "+name.title()+" !"
print(msg)
usernames=['hannah','ty','margot']
greet_user(usernames)
#在函数中修改列表
def print_models(unprinted_designs,completed_models):
"""模拟打印每个设计,直到没有未打印的设计为止,打印后的移动到completed_models列表中"""
while unprinted_designs:
current_design=unprinted_designs.pop()
print("Printing model: "+current_design)
completed_models.append(current_design)
def show_completed_models(completed_models):
"""显示打印好的所有模块"""
print("\nThe follwing models have been printed: ")
for completed_model in completed_models:
print(completed_model)
unprinted_designs=['iphone case','robot pendant'.'dodecahedron']
completed_models=[]
print_models(unprinted_designs,completed_models)
show_completed_models(completed_models)
#禁止函数修改列表
fuction_name(list_name[:])# 使用列表的副本,运用复制列表
#传递任意数量的实参
def make_pizza(*toppings): #一个未知大小的元组
"""打印顾客点的所有配料"""
print(toppings)
make_pizza('pepperoni')
make_pizza('mushrooms','green peppers','extra cheese')
def make_pizza(*toppings): #一个未知大小的元组
"""打印顾客点的所有配料"""
for topping in toppings:# 遍历
print("- "+topping)
make_pizza('pepperoni')
make_pizza('mushrooms','green peppers','extra cheese')
#结合使用位置实参和任意数量实参
def make_pizza(size,*toppings):
print("\nMaking a"+str(size))
for topping in toppings:
print("-"+topping)
make_pizza(16,'pepperoni')
make_pizza(22,'mushrooms','green peppers','extra cheese')
#使用任意数量的关键字实参
def build_profile(first,last,**user_info):
"""创建一个字典,其中包含我们所知道有关用户的一切"""
profile={}
profile['first_name']=first
profile['last_name']=last
for key,value in user_info.items():
profile[key]=value# 添加键值对
return profile
user_profile=build_profile('albert','einstein',location='princeton',field='physics')
print(user_profile)
#导入整个模块
import pizza
pizza.make_pizza(10,'pepper')
pizza.make_pizza(10,'apple','green peppers','mushrooms')
#导入特定的函数
from pizza import make_pizza
make_pizza(10,'pepper')
make_pizza(10,'apple','green peppers','mushrooms')
#使用as给函数指定别名
from pizza import make_pizza as mp
mp(10,'pepper')
mp(10,'apple','green peppers','mushrooms')
#使用as给模块指定别名
import pizza as p
p.make_pizza(10,'pepper')
p.make_pizza(10,'apple','green peppers','mushrooms')
#导入模块中的所有函数
from pizza import *
make_pizza(10,'pepper')
make_pizza(10,'apple','green peppers','mushrooms')
python的函数教学
最新推荐文章于 2022-07-28 17:18:01 发布