• Pyhton学习——Day6


    # def test(x) :  #形参:不占内存空间,调用函数时传入值,程序完成形参释放内存
    # # 注释内容
    # # 代码内容
    # y = x*2
    # print(y)
    # # return
    # # test(2)
    # 4 PS:位置参数必须在定义函数左边,必须一一对应
    # 默认参数在定义的时候直接调用函数设置的时候的默认值,而不设置函数的值
    # test(x,*args,**kwargs)*args **kwargs可以接收多个参数,*args接收列表,表示为元祖 **kwargs接收字典
    # 可以减少重复代码;保持一致性,易维护;可扩展性
    ###############################################上节课复习#########################################################
    ########################################局部变量与全局变量#########################################################
    # 在子程序中定义的变量称为局部变量,在程序的一开始定义的变量称为全局变量。
    # 全局变量作用域是整个程序,局部变量作用域是定义该变量的子程序。
    # 当全局变量与局部变量同名时:
    # 在定义局部变量的子程序内,局部变量起作用;在其它地方全局变量起作用。
    # name = 'lhf'#没有任何缩进的就是全局变量,任何情况下都可以调用
    # def change_name():
    # print('change_name')
    # change_name()在子函数过程中定义的变量成为局部变量
    # 变量私有化的只能是函数
    # global 如果函数的内部无global关键字,优先读取局部变量,读取全局变量,无法重新赋值
    # 如果函数中有global关键字,变量本质就是全局的变量,可以读取可以重新赋值
    #对于可变对象,可以对内部的全局变量进行元素操作进行任何的内部方法
    ###########全局变量全部大写###############
    ###########局部变量全部小写###############
    # NAME = '海风'----1
    # def huangwei():----3
    # name = "黄伟"
    # print(name)----4
    # def liuyang():----6
    # name = "刘洋"
    # print(name)----7
    # def nulige():----10
    # name = '沪指花'
    # print(name)---11
    # print(name)----8
    # nulige()----9
    # liuyang()-----5
    # print(name)----12
    # huangwei()----2
    # 黄伟
    # 刘洋
    # 刘洋
    # 沪指花
    # 黄伟
    #################################################################################################################
    ##################################前向引用#######################################################################
    # def foo():
    # print('from foo')
    # bar()#未定义该函数,所以运行时报错
    # foo()
    # def bar():
    # print('from bar')
    # def foo():
    # print('from foo')
    # bar()
    # #未定义该函数,所以运行时报错
    # foo()
    #风湿理论:函数即变量
    ###############################################递归############################################################
    # import time
    # def calc(n):
    # print(n)
    # time.sleep(1)
    # calc(n)
    # calc(10)
    # 用栈的方式去保存,递归占用内存导致最终报错
    #递归特性:
    # 1.需要明确的结束条件(可以设置条件判断return)
    # 2.每次进入更深一层时,问题规模相比上次递归应有所减少
    # 3.递归效率不高,递归层次过多会导致栈溢出(在计算机中,函数调用是通过栈(stack)这种数据结构实现的,
    # 每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。由于栈的大小不是无限的,
    # 所以,递归调用的次数过多,会导致栈溢出)
    # import time
    # person_list = ['alex','wupeiqi','yuanhao','lihaifeng']
    # def ask_way(person_list):
    # if len(person_list) == 0:
    # return '根本没人知道'
    # person = person_list.pop(0) # 依次弹出列表中的元素
    # if person == 'lihaifeng':
    # return '%s说:我认识路'%person
    # print('问[%s]' %person)
    # print('%s说:帮你问问%s'%(person,person_list))
    # time.sleep(1)
    # res = ask_way(person_list)
    # return res
    # res = ask_way(person_list)
    # print(res)
    ##########################################################################################################
    Win a contest, win a challenge
  • 相关阅读:
    Vue的一些记录
    使用AndroidKiller进行APK反编译
    Clickhouse 分组查询排序取第一条数据
    onnx
    cross_entropy
    diffusion model
    无法解析类型 java.util.Map$Entry。从必需的 .class 文件间接引用了它
    redis key迁移、复制
    Linux查看网络事情情况
    [CentOS7]升级SSH9.0p1
  • 原文地址:https://www.cnblogs.com/pandaboy1123/p/8453480.html
Copyright © 2020-2023  润新知