python基础day09笔记

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

python基础day09笔记

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