Python编程:从入门到实践第八章读书笔记8.2

Python编程:从入门到实践第八章读书笔记8.2


#8.2.1位置实参
#pets.py
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')  #要按顺序提供形参的实参

##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')

##2.位置实参的顺序很重要
describe_pet('harry','hamster')

#8.2.2关键字实参
#关键字实参是传递给函数的名称-值对。你直接在实参中将名称和值关联起来了,因此向函数传递实参时不会混淆
#关键字实参让你无需考虑函数调用中的实参顺序,还清楚的指出了函数调用中各个值的用途
describe_pet(animal_type = 'hamster',pet_name = 'harry')
describe_pet(pet_name = 'harry',animal_type = 'hamster')  #关键字实参无关顺序
#注意:使用关键词实参时,务必准确地指定函数定义中的形参名

#8.2.3默认值
def describe_pet(pet_name,animal_type='dog'):  #给形参指定默认值;在调用函数中给形参提供了实参时,Python将使用指定的是数值;否则,将使用形参的默认值。
	                                           #因此,给形参指定默认值后,可在函数调用中省略相应的实参。使用默认值可简化函数调用,还可以清除指出函数的用法
	"""显示宠物的信息"""
	print("\nI have a " + animal_type + ".")
	print("My " + animal_type + "'s name is " + pet_name.title() + ".")
describe_pet(pet_name = 'willie')
describe_pet('willie')                         #如果函数调用中只包含宠物的名字,这个实参将关联到函数定义中的第一个实参
describe_pet(pet_name = 'harry',animal_type = 'hamster')

#注意:在在使用默认值时,在形参列表中必须先列出没有默认值的形参,才列出有默认值的形参。这让Python依然能够正确地解读位置实参

#8.2.4等效的函数调用
def describe_pet(pet_name,animal_type='dog'):
	"""显示宠物的信息"""
	print("\nI have a " + animal_type + ".")
	print("My " + animal_type + "'s name is " + pet_name.title() + ".")
	
#一条名为willie的小狗
describe_pet('willie')
describe_pet(pet_name = 'willie')
#一只名为harry的仓鼠
describe_pet('harry','hamster')
describe_pet(pet_name = 'harry', animal_type = 'hamster')
describe_pet(animal_type='hamster',pet_name='harry')
	
#注意:使用哪种调用方式无关紧要,只要函数调用能生成你希望的输出就行。使用对你来说容易理解的调用方式即可。

#8.2.5避免实参错误
def describe_pet(pet_name,animal_type):
	"""显示宠物的信息"""
	print("\nI have a " + animal_type + ".")
	print("My " + animal_type + "'s name is " + pet_name.title() + ".")
describe_pet()

#Python读取函数的代码,并指出我们需要为哪些形参提供实参,这提供了极大的帮助。这也是应该给变量和函数指定描述性名称的原因


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值