1、python变量的 symbol table

python是一种动态类型语言,symbol只有在第一次定义或赋值的时候才会加入到global symbol table 或者

local symbol table,比如变量的首次赋值、函数和类通过 def or class的首次定义。如下:

Operation Statement
Assignments x = value
Import operations import module or from module import name
Function definitions def my_func(): ...
Argument definitions in the context of functions def my_func(arg1, arg2,... argN): ...
Class definitions class MyClass: ...

2、关于变量的scope

local scope ---- in function

global Scope ----  out of function

3、locals() 和 globals()  的比较

相同点:都返回用字典表示的符号变量表(symbol table)

在global Scope 下使用的时候效果相同,都获取global symbol table 中的变量

差异:在local scope中使用的时候,globals() 获取global symbol table 中的变量,

locals() 获取local symbol table 中的变量。

a = "python"   # 函数外定义的a为全局变量
print("print out from function")
print(locals())
print(globals())
def fuc1(arg):b = "fuc1"print("print in function")print(locals())print(globals())fuc1(3)print out from function
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': '__file__': '/home/hl/code/mmsr-master/codes/scripts/test.py', '__cached__': None, 'a': 'python'}
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': '__file__': '/home/hl/code/mmsr-master/codes/scripts/test.py', '__cached__': None, 'a': 'python'}
print in function
{'b': 'fuc1', 'arg': 3}
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': '__file__': '/home/hl/code/mmsr-master/codes/scripts/test.py', '__cached__': None, 'a': 'python', 'fuc1': <function fuc1 at 0x7f13631f8e18>}Process finished with exit code 0

python 里面的内置函数之:locals() 和 globals()相关推荐

  1. Python两个内置函数——locals 和globals

    python作用域 http://tgstdj.blog.163.com/blog/static/748200402012419114428813/ 有两种类型的作用域--类的变量和对象的变量. 类的 ...

  2. python 两个内置函数——locals 和globals(名字空间)批量以自定义变量名创建对象

    文章目录 locals 和globals(名字空间)简介 1.局部变量函数locals例子(locals 返回一个名字/值对的字典) 批量创建对象 示例1 示例2 函数内 类内 2.全局变量函数glo ...

  3. python之路——内置函数和匿名函数

    楔子 在讲新知识之前,我们先来复习复习函数的基础知识. 问:函数怎么调用? 函数名() 如果你们这么说...那你们就对了!好了记住这个事儿别给忘记了,咱们继续谈下一话题... 来你们在自己的环境里打印 ...

  4. 初学者python笔记(内置函数_2)

    这篇初学者笔记是接着上一篇初学者python笔记(内置函数_1)的.同样都是介绍Python中那些常用内置函数的. max()和min()的高级用法 我们都知道,max():取最大值,min():取最 ...

  5. [转载] (三)Python关键字和内置函数

    参考链接: Python中的数学函数 4(特殊函数和常量) 一.Python的关键字 和其他语言一样,关键字有特殊含义,并且关键字不能作为变量名.函数名.类名等标识符. 快速查看关键字的方法除了上cs ...

  6. python中比较重要的几个函数_Python 几个重要的内置函数 python中的内置函数和关键字需要背过吗...

    python重要的几个内置函数用法 python内置函数什么用忘不掉的是回忆,继续的是生活,错过的,就当是路过吧.来来往往身边出现很多人,总有一个位置,一直没有变.看看温暖的阳光,偶尔还是会想一想. ...

  7. 十五. Python基础(15)--内置函数-1

    十五. Python基础(15)--内置函数-1 1 ● eval(), exec(), compile() 执行字符串数据类型的python代码 检测#import os 'import' in c ...

  8. python学习总结----内置函数及数据持久化

    python学习总结----内置函数及数据持久化 抽象基类(了解)- 说明:- 抽象基类就是为了统一接口而存在的- 它不能进行实例化- 继承自抽象类的子类必须实现抽象基类的抽象方法 - 示例:from ...

  9. Python学习(14)--内置函数

    Python学习(14)--内置函数 1.Python内置函数 在Python中有很多的内置函数供我们调用,熟练的使用这些内置函数可以让编写代码时事半功倍,所谓内置函数就是那些Python已经预定义并 ...

  10. python提供的内置函数有哪些_python内置函数介绍

    内置函数,一般都是因为使用频率比较频繁,所以通过内置函数的形式提供出来.对内置函数通过分类分析,基本的数据操作有数学运算.逻辑操作.集合操作.字符串操作等. 说起我正式了解内置函数之前,接触到的是la ...

最新文章

  1. 《你的灯亮着么》五六篇
  2. 梯形积分法【OpenMP实现】多个版本
  3. xhprof 安装使用(windows linux混版)
  4. Indian Scientists Design Device to Collect Solar Energy 印度科学家设计太阳能收集设备
  5. linux mkdir绝对路径,linux学习(六)绝对路径、相对路径、cd、mkdir、rmdir、rm(示例代码)...
  6. Swift iOS : 内存管理
  7. 真正的工业互联网!传统企业的数据建设之路,这3个场景不得不看
  8. 自己写Tiny6410的Bootloader总结!
  9. Android之登录那点事
  10. Codeforces Round #573 (Div. 2)
  11. 《WINDOWS游戏编程之从零开始》第四章学习笔记
  12. java steam_Java,Steam控制器和我
  13. minitab怎么算西格玛水平_计算西格玛水平.ppt
  14. 5种方式实现 Java 单例模式
  15. AutoCAD启动缓慢
  16. 同步模式之保护性暂停
  17. “杜拉拉升职记”电影看后感
  18. 我们跟8个程序员聊了一晚上,攒齐了来自BAT的吐槽
  19. Java(实验三)类与对象-定义并实现一个长方体类(Cube),包含长(length)、宽(width)与高(height)等三个属性
  20. ssm+java农村快递代取平台52wxh(程序+lw+源码+远程部署)

热门文章

  1. Spring.net 控制反转(IoC)容器_(收集)
  2. 会话(状态)管理Cookie与Session(二)
  3. Linux中网卡的命名规则
  4. datax 不识别字段过滤_初效空气过滤器种类
  5. java web gradle_java web使用gradle配置详情
  6. 基于python的注册登录界面_基于python的Tkinter编写登陆注册界面
  7. java写培根披萨和海鲜披萨_java子类继承父类实例-披萨的选择实现代码
  8. maven配置项目根路径_Java的项目构建工具Maven的配置和使用教程
  9. 计算机专业怎么转行做建筑,【土木转行·续集】土建类同学转行计算机,什么时间转最合适?...
  10. CMU 15-213 Introduction to Computer Systems学习笔记(16) Virtual Memory: Concepts