【例7.7】位置参数的使用#example7.7程序运行结果如下:import turtledef star (a,b,o) :turtle.color(a,b)turtle.begin fillfor i in range(5):turtle.forward(c)turtle.left(i44)turtle.end fillOstar("red","blue",180),"yellow",150)("blackstar"purple",100)pinkstarturtle.hideturtle()
程序运行结果如下: 【例7.7】位置参数的使用
【例7.8】修改【例7.7】中的函数调用语句,查看程序运行结果。#example7.8-a#example7.8-bimport turtleimport turtledefstar(a,b,):def star(a,b,c):turtle.color(a.b)turtle.color(a,b)turtle.begin_fili()turtle.begin fili()for i in range(5):for i in range(5):turtle.forward(c)turtle.forward(c)turtle.left(144)turtle.left(144)turtle.end_fillOstar("red","blue",i80,100)turtle.end fillOturtle.hideturtle()star("red","blue"turtle.hideturtle运行以上两个程序,都会产生错误
运行以上两个程序,都会产生错误 【例7.8】修改【例7.7】中的函数调用语句, 查看程序运行结果
位置参数和关键字参数2.关键字参数在调用函数的时候,可以明确指定参数值传递给哪个形参,这样的参数被称为关键字参数。使用了关键字参数,可以不考虑形参与实参的位置和顺序一一对应
2.关键字参数 在调用函数的时候,可以明确指定参数值传递给哪个形参,这 样的参数被称为关键字参数。使用了关键字参数,可以不考虑 形参与实参的位置和顺序一一对应。 位置参数和关键字参数
【例7.9】关键字参数会数位置不必一一对应#example7.9def star(a,b,c):import turtleturtle.color(a,b)程序运行结果如下:turtle.begin fill(for iin range(5)turtle.forward(c)turtle.left(144)turtle.end fillostar("red","blue",150)star(b="blue",a="red",c=150)#关键字参数#关键字参数star(c=l50,a="red",b="blue
【例7.9】关键字参数 程序运行结果如下: 参数位置不必一一对应
7.3.3默认值参数Python允许创建函数时为形参指定默认值。调用函数时,可以不为设置了默认值的形参传递值,此时将使用函数定义时形参的默认值,也可以通过显式赋值方式改变默认值。带有默认值参数的函数按如下格式定义:def<函数名>(...<形参=默认值>...)<函数体>
Python允许创建函数时为形参指定默认值。调用函数时,可以 不为设置了默认值的形参传递值,此时将使用函数定义时形参 的默认值,也可以通过显式赋值方式改变默认值。 带有默认值参数的函数按如下格式定义: def <函数名>(.<形参=默认值>.) <函数体> 7.3.3默认值参数