使用excel统计学生成绩让相同学生分数名次相同-英雄云拓展知识分享
106
2023-11-13
【摘要】 本书摘自《Python 编程与应用实践》一书中第5章,第3节,由冯伟森,王建,杨宁主编。
5.3.2 位置参数
有的函数可能需要不止一个信息,可能有多个信息(参数)。在调用这些函数时,必 须使用正确的参数顺序和数量,如果不符合,可能就不会得到我们想要的效果。
introduce.py
def intro_myself(name,sex):
print("My name is"+name+"!")
print("I am a"+sex+"!")
intro_myself("Jia","girl")
intro_myself("He","girl")
在函数 intro_myself() 中,拥有两个参数 name 和 sex, 分别用来表示姓名和性别。 在 intro_myself("Jia","girl") 中,按照顺序传递了两个值给形参,将"Jia"传递给了第一 个参数 name, 将"girl"传递给了第二个参数sex, 这样在调用函数时就打印出 My name is Jia! 和 Iam a girl!。同理,在 intro_myself("He","girl") 中,打印出My name is He! 和 I am a girl!。如下所示:
My name is Jia!
I am a girl!
My name is He!
I am a girl!
如果我们把两个参数顺序交换,则不会得到我们想要的结果,大家可以尝试一下。
5.3.3 关键字参数
位置参数必须保证参数顺序的一致,如果我们使用关键字参数,则可以不用按照参数 顺序调用函数。关键字参数调用实质上就是人为地使实参和形参一一对应。例如下面这个 例子,使用关键字参数调用函数:
def intro_myself(name,sex):
print("My name is"+name+"!")
print("I am a"+sex+"!")
intro_myself(name="Jia",sex="girl")
intro_myself(sex="girl",name="He")
可以看到,在函数 intro_myself() 中,我们没有做任何改变,只是在两次函数调用 的时候使用了关键字参数,在 intro_myself(name="Jia",sex="girl") 这一行代码中,两 个参数顺序和函数定义中的顺序一模一样,而在 intro_myself(sex="girl",name="He") 中,参数顺序发生了改变,但是我们通过使用关键字参数,指定了各个实参对应的形参, 虽然顺序发生了改变,但是并不影响函数的使用,两次调用打印的结果和上一个例子 一样。
5.3.4 默认参数
在编写函数时,还可以给形参设置一个默认值,如果设置默认参数,当调用函数时, 若我们没有提供实参,Python 会自动使用默认参数。例如下面例子中的默认参数使用:
def intro_myself(name,sex="girl"):
print("My name is "+name+"!")
print("I am a"+sex+"!")
intro_myself(name="Jia")
intro_myself(name="Jiang",sex="boy")
在函数 intro_myself() 中,我们给定了一个默认参数 sex="girl", 在这里,如果我 们在调用函数时没有给出相应的值,Python 会自动分配给我们性别为"girl" 。在 intro
myself(name="Jia") 代码中,没有给定形参sex 的值,系统默认为"girl", 得到输出结果:
My name is Jia!
I am a girl!
而我们在 intro_myself(name="Jiang",sex="boy") 中,指定了sex="boy",Python 将不再使用"girl", 而是使用"boy" 。这一行代码执行结果如下:
My name is Jiang!
I am a boy!
值得注意的是,通常我们把默认形参放在最后。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~