python基础day09笔记

这篇博客详细介绍了Python函数的参数传递方式,包括位置传参、序列传参、关键字传参和字典关键字传参。还讨论了函数的缺省参数、星号元组形参、命名关键字形参和双星号字典形参的用法,并提供了多个示例和练习题,帮助读者深入理解Python函数参数的使用和定义。
摘要由CSDN通过智能技术生成

2018.7.12
day08回顾
集合 set,固定集合frozenset
day09笔记
 函数的参数传递
   传递方式:
   位置传参
   序列传参
   关键字传参
   字典关键字传参
位置传参:
 实际参数(实参)的对应关系与形式参数(形参)的对应关系是按位置来依次对应的

示意:

def mymin (a ,b,c):
    pass
mymin(1,2,3)


示例:

# 此示例示意位置传参
def myfun1(a, b, c):
    # 这是一个函数的传参示例,此函数以后不会改变代码
    print('a 的值是:', a)
    print('b 的值是:', b)
    print('c 的值是:', c)


myfun1(1, 2, 3)

myfun1(4, 5, 6)


说明:
 实参和形参通过位置进行传递的匹配
 实际参数的个数必须与形式参数的个数相同

序列传参:
  序列传参是指在函数调用过程中,用*将序列拆解后按位置进行传递 的传参方式


 说明:
   序列传参时,序列拆解的位置将于形成一一对应
   序列的位置信息对应相应的形参位置


 示例见:

# 此示例示意位置传参
def myfun1(a, b, c):
    # 这是一个函数的传参示例,此函数以后不会改变代码
    print('a 的值是:', a)
    print('b 的值是:', b)
    print('c 的值是:', c)


s1 = [11, 22, 33]
myfun1(*s1)  # 相当于 myfun1(11, 22, 33)
# myfun1(s1[0], s1[1], s1[2])
t1 = (44, 55, 66)
myfun1(*t1)
myfun1(*"ABC")




关键字传参:
  关键字传参是指传参时,按着形参的名称给形参赋值
  实参和形参按名称进行匹配
 示例见:

# 此示例示意位置传参
def myfun1(a, b, c):
    # 这是一个函数的传参示例,此函数以后不会改变代码
    print('a 的值是:', a)
    print('b 的值是:', b)
    print('c 的值是:', c)


# 以下是关键传参
myfun1(b=22, c=33, a=11)
myfun1(c=666, b=555, a=444)


字典关键字传参
  是指实参为字典,将字典用'**'
  拆解后再进行关键字传参的传参方式


示例:

# 此示例示意位置传参
def myfun1(a, b, c):
    # 这是一个函数的传参示例,此函数以后不会改变代码
    print('a 的值是:', a)
    print('b 的值是:', b)
    print('c 的值是:', c)


d = {'a': 100, 'b': 200, 'c': 300}
myfun1(**d)  # 等同于 myfun1(a=100,b=200,c=300)

# 下是错误做法
# d2 = {'a': 100, 'b': 200, 'c': 300, 'd': 400}
# myfun1(**d2)


 说明:
  字典的键名和形参名必须一致
  字典的键名必须为字符串(标识符)
  字典中的键名要在形参中存在


函数的综合传参
 函数的传参方式在能确定形参能唯一匹配到相应实参的情况下可以任意组合

 说明:
  位置传参(序列传参)要在关键字传参(字典关键字传参)的右侧
 示例:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值