Python函数进阶
John Doe

Python 函数

Python函数进阶

课前回顾

  1. 函数的返回值

    通过return来使主函数和外部函数形成闭环,return只能用于函数内部使用且return后的程序不会被执行

  2. 变量的作用域

    变量分为局部变量和全局变量

  3. 变量的命名规则

    可以由数字、字母、下划线组成,且不能以数字开头,不能包括特殊符号;可以为汉字、韩语、日语,但是尽量不要

本节新知

  1. 新词速记

    global 全局

  2. 变量的作用域

    变量分为局部变量和全局变量,在函数外部定义的变量为全局变量,在函数内部定义的变量为局部变量。函数内部可以读取全局变量的值,但是不可以修改不可变的全局变量的值。

    1
    2
    3
    4
    5
    6
    7
    a = 1 # 整型不可变

    def _():
    # a = a + 1 ,当取消注释后报错,函数内部不能修改不可变全局变量的值
    print(a) # 函数内部可以访问全局变量

    _()
  3. global关键字

    在函数内部使用,声明该函数内使用的该变量是全局变量,则可以修改该值

    1
    2
    3
    4
    5
    6
    7
    8
    a = 1 # 整型不可变

    def _():
    global a # 声明此处的a是使用的全局变量的值
    a = a + 1 # 函数可以修改该全局变量
    print(a)

    _()
  4. 数据类型的强制转换

    偷懒机制,只会进行一次转换

    1
    2
    3
    4
    5
    6
    int("12") # 12
    float("12") # 12.0
    float("12.3") # 12.3
    int("12.3") # 报错,懒惰,不能一下转两次
    int(float("12.3")) # 12
    bool("张三") # True,通常与if结合使用,但是if后表达式默认被强制转化布尔值,因此bool函数不常用
  5. 函数的默认参数

    通常函数声明了几个形参,则我们调用的时候就要传递几个实参,但是有默认参数时除外,有默认参数的形参可以不传递实参。有默认参数的形参必须靠后排列。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    def 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,体重指定传参60
  6. turtle与循环的综合应用

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    import 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模块的常用函数以及常见单词的拼写

 评论
评论插件加载失败
正在加载评论插件