博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
全局变量和局部变量
阅读量:5067 次
发布时间:2019-06-12

本文共 1152 字,大约阅读时间需要 3 分钟。

#全局变量;顶头写的就是全局变量,就是没有缩进的变量;在任何位置都能调用#局部变量;在子程序中定义的变量name = "test"            #全局变量def func():                #这个函数里面就是局部作用域    global name            #定义全局变量;上面的test就会被修改,下面多name修改都是修改的全局name(申明,name 就是全局那个name)    name = "多对多"        #局部变量    print(name)func()print(name)# 如果函数中无global的时候;优先读取局部变量;如果无局部变量,就读取全局变量;但是无法对全局变量重新赋值;但是对于可变类型;可以对它进行内部操作# 如果有global 可以赋值,可以修改,但是修改就是原来的变量的值 s = ["a","b"]def func1():    s.append('c')       #对于可变类型;可以对它进行内部操作    print(s)            #['a', 'b', 'c']func1()print(s)                #['a', 'b', 'c']def test1():    name = "test1"    print(name)         #test1    def test2():        name = "test2"        print(name)     #test2        def test3():            name = "test3"            print(name) #test3        print(name)     #test2        test3()    test2()test1()#nonlocal 是改变上一层的值def js():    val = "aaa"     #修改成了bbb    def jp():        nonlocal val #修改上层val为下面这个bbb的值        val = "bbb"        print(val)   #bbb    jp()    print(val)       #bbbjs()def js():    val = "aaa"    def jp():        val = "bbb"        print(val)        return jp    return jpjs()()

 

转载于:https://www.cnblogs.com/ajaxa/p/8966867.html

你可能感兴趣的文章
Azure Site Recovery 通过一键式流程将虚拟机故障转移至 Azure虚拟机
查看>>
Hello China操作系统STM32移植指南(一)
查看>>
cocos2dx CCEditBox
查看>>
VC++2012编程演练数据结构《8》回溯法解决迷宫问题
查看>>
第一阶段冲刺06
查看>>
WIN下修改host文件并立即生效
查看>>
十个免费的 Web 压力测试工具
查看>>
ckeditor 粘贴后去除html标签
查看>>
面试题
查看>>
51Nod:活动安排问题之二(贪心)
查看>>
EOS生产区块:解析插件producer_plugin
查看>>
数据库框架的log4j日志配置
查看>>
lintcode-easy-Remove Element
查看>>
mysql重置密码
查看>>
jQuery轮 播的封装
查看>>
一天一道算法题--5.30---递归
查看>>
switchcase的用法
查看>>
React.js 小书 Lesson15 - 实战分析:评论功能(二)
查看>>
Java基础03 构造器与方法重载
查看>>
kafka的使用
查看>>