温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python学习笔记4:变量作用域

发布时间:2020-04-03 03:40:38 来源:网络 阅读:262 作者:young27 栏目:开发技术

变量作用域

  • 变量由作用范围限制
  • 分类:按照作用域分类
    • 全局(global): 在函数外部定义
    • 局部(local):在函数内部定义
  • 变量的作用范围:
    • 全局变量:在整个全局范围都有效
    • 全局变量在局部可以使用(即函数内部可以访问函数外部定义的变量)使用方法: global
    • 局部变量在局部范围可以使用
    • 局部变量在全局范围无法使用
  • LEGB原则
    • L(Local)局部作用域
    • E(Enclosing function locale)外部嵌套函数作用域
    • G(Global module)函数定义所在模块作用域
    • B(Buildin): python内置模块的作用域
# 认为a1是全局的
a1 = 100
def fun():
    global a1
    a1 = 300
    print(a1)
    print("I am in fun")
    # a2的作用范围是fun
    a2 = 99
    print(a2)    
print(a1)
fun()
  • 可以通过内建函数:globals()和locals()显示出局部变量和全局变量

eval()函数

  • 把一个字符串当成一个表达式来执行, 返回表达式执行后的结果
  • 语法:

        eval(string_code, globals=None, locals=None)

exec()函数

  • 跟eval功能类似, 但是,不返回结果
  • 语法:

    exec(string_code, globals=None, locals=None)
x = 100
y = 200
z1 = x + y
z2 = eval("x+y")
print(z1)
print(z2)
c =eval("print(x,y)")
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI