Python函数进阶

Python 函数
Python函数进阶
课前回顾
函数的返回值
通过return来使主函数和外部函数形成闭环,return只能用于函数内部使用且return后的程序不会被执行
变量的作用域
变量分为局部变量和全局变量
变量的命名规则
可以由数字、字母、下划线组成,且不能以数字开头,不能包括特殊符号;可以为汉字、韩语、日语,但是尽量不要
本节新知
新词速记
global 全局
变量的作用域
变量分为局部变量和全局变量,在函数外部定义的变量为全局变量,在函数内部定义的变量为局部变量。函数内部可以读取全局变量的值,但是不可以修改不可变的全局变量的值。
1
2
3
4
5
6
7a = 1 # 整型不可变
def _():
# a = a + 1 ,当取消注释后报错,函数内部不能修改不可变全局变量的值
print(a) # 函数内部可以访问全局变量
_()global
关键字在函数内部使用,声明该函数内使用的该变量是全局变量,则可以修改该值
1
2
3
4
5
6
7
8a = 1 # 整型不可变
def _():
global a # 声明此处的a是使用的全局变量的值
a = a + 1 # 函数可以修改该全局变量
print(a)
_()数据类型的强制转换
偷懒机制,只会进行一次转换
1
2
3
4
5
6int("12") # 12
float("12") # 12.0
float("12.3") # 12.3
int("12.3") # 报错,懒惰,不能一下转两次
int(float("12.3")) # 12
bool("张三") # True,通常与if结合使用,但是if后表达式默认被强制转化布尔值,因此bool函数不常用函数的默认参数
通常函数声明了几个形参,则我们调用的时候就要传递几个实参,但是有默认参数时除外,有默认参数的形参可以不传递实参。有默认参数的形参必须靠后排列。
1
2
3
4
5
6
7
8
9
10def self_introduce(name, age, height=1.70, weight=75): # 两个带默参的靠后排
print("My name is "+name)
print("My age is "+age)
print("My height is "+height)
print("My weight is "+weight)
self_introduce("张三", 16) # 此时身高默认1.70,体重默认75
self_introduce("李四", 17, 1.68) # 此时李四神身高1.68,体重默认75
self_introduce("王五") # 报错,缺少一个必要参数
self_introduce("赵六", 15, weight=60) # 此时身高默认1.70,体重指定传参60turtle与循环的综合应用
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22import turtle as t
# 初始化
t.speed(0)
t.hideturtle()
t.delay(0)
color_l = ["red", "yellow", "blue", "green", "pink"]
size_l = []
for i in range(160,39,-30):
size_l.append(i)
# 画圆
for i in range(len(color_l) if len(color_l)<len(size_l) else len(size_l)):
t.pu()
t.goto(0,-1*size_l[i])
t.pd()
t.color(color_l[i])
t.begin_fill()
t.circle(size_l[i])
t.end_fill()
t.done()
课后作业
复习前面所学的turtle模块的常用函数以及常见单词的拼写
评论
评论插件加载失败
正在加载评论插件