8.1~8.2python 定义函数,传递实参

1.实参和形参

#username为形参
def greet_user(username):
    print("hello "+username.title()+"!")

#将实参"tom"传递给greet_user(),这个值被存储在形参username中
greet_user("tom")



>>> 
===================== RESTART: D:/python学习/第8章 函数/8.1.py =====================
hello Tom!
>>> 

 2.传递实参

2.1位置实参

 

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")
describe_pet("dog","willie")

'''函数调用中每个实参基于顺序关联到函数定义中的每个形参,这种关联方式称为位置实参'''





>>> 
==================== RESTART: D:/python学习/第8章 函数/pets.py ====================

I have a hamster.
My hamster's name is Harry.

I have a dog.
My dog's name is Willie.
>>> 

 

 2.2关键字实参

 

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")
describe_pet(pet_name="willie",animal_type="dog")

'''关键字实参是传递给函数的名称-值对,直接在实参中将名称和值关联起来不受顺序影响'''
'''注意:使用关键字实参时,务必准确地指定函数定义中的形参名'''




>>> 
==================== RESTART: D:/python学习/第8章 函数/pets.py ====================

I have a hamster.
My hamster's name is Harry.

I have a dog.
My dog's name is Willie.
>>> 

 2.3形参指定默认值

#给形参指定默认值如animal_type="dog",在函数调用中如果给形参提供了实参时,python将使用指定的实参值,否则,将使用形参的默认值
#在此修改了形参的排列顺序,因为describe_pet("wangwang")只有一个位置实参,它将关联到函数的第一个形参

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("wangwang")
describe_pet(pet_name="harry")
describe_pet(animal_type="cat",pet_name="willie")

'''关键字实参是传递给函数的名称-值对,直接在实参中将名称和值关联起来不受顺序影响'''
'''注意:使用关键字实参时,务必准确地指定函数定义中的形参名'''




>>>
==================== RESTART: D:/python学习/第8章 函数/pets1.py ====================

I have a dog.
My dog's name is Wangwang.

I have a dog.
My dog's name is Harry.

I have a cat.
My cat's name is Willie.
>>>


 

 

 

 
上一篇:03、了解自动配置原理


下一篇:java基础复习五