1.函数的定义与使用
1>函数的理解与定义
降低编码难度,代码复用
def <函数名> (<参数(0个或多个)>):
<函数体>
return <返回值>
2>函数的使用和调用过程
调用时给出实际参数
3>函数的参数传递
可有参数,也可无参数,但()必须保留
def <函数名>():
<函数体>
return <返回值>
-函数定义时,可为某些参数指定默认值,构成可选参数。
def <函数名>(<非可选参数>,<可选参数>):#可选参数必须在非可选参数后边
<函数体>
return <返回值>
eg:
-函数定义时,可以设计可变数量参数,即不确定参数总数。
def <函数名>(<参数>,*b):
<函数体>
return <返回值>
eg:
-函数调用时,参数可以按照位置或者名称方式传递。
4>函数的返回值
0个或多个返回值
返回值可有可无,return也可有可无。
5>局部变量和全局变量
6>lambda函数
2.实例:七段数码管绘制
#SevenDigitsDrawV1.py
import turtle as t
def drawGap():#绘制数码管间隔
t.penup()
t.fd(5)
def drawLine(draw):#绘制单段数码管
drawGap()
t.pendown() if draw else t.penup()
t.fd(40)
drawGap()
t.right(90)
def drawDigit(digit):#根据数字绘制七段数码管
drawLine(True) if digit in [2,3,4,5,6,8,9] else drawLine(False)
drawLine(True) if digit in [0,1,3,4,5,6,7,8,9] else drawLine(False)
drawLine(True) if digit in [0,2,3,5,6,8,9] else drawLine(False)
drawLine(True) if digit in [0,2,6,8] else drawLine(False)
t.left(90)
drawLine(True) if digit in [0,4,5,6,8,9] else drawLine(False)
drawLine(True) if digit in [0,2,3,5,6,7,8,9] else drawLine(False)
drawLine(True) if digit in [0,1,2,3,4,7,8,9] else drawLine(False)
t.left(180)
t.penup()#为绘制后续数字确定位置
t.fd(20)#为绘制后续数字确定位置
def drawDate(date):#获得要输出的数字