python的函数教学

 #定义函数
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')


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值