非常教程

Python参考手册

语言 | Language

symtable

源代码: Lib / symtable.py

符号表由AST编译器在字节码生成之前生成。符号表负责计算代码中每个标识符的范围。symtable提供了一个界面来检查这些表格。

1.生成符号表

symtable.symtable(code, filename, compile_type)

返回SymbolTablePython源代码 的顶层。filename 是包含代码的文件的名称。compile_type 就像是模式参数compile()

2.检查符号表

class symtable.SymbolTable

块的命名空间表。构造函数不公开。

get_type()

返回符号表的类型。可能的值是'class''module''function'

get_id()

返回表格的标识符。

get_name()

返回表格的名称。如果表是用于类的话,这是类的名称,如果表是用于函数的函数的名称,或者'top'表是全局的(get_type()返回'module')。

get_lineno()

返回此表格中块的第一行的编号。

is_optimized()

如果此表中的当地函数可以优化,则返回True。

is_nested()

如果该块是一个嵌套类或功能,则返回True

has_children()

如果块已经在它嵌套的命名空间,则返回True

这些都可以用get_children()

has_exec()

如果块使用exec,则返回True。

has_import_star()

如果块使用星号的从进口,则返回True

get_identifiers()

返回此表中符号名称的列表。

lookup(name)

在表中查找名称并返回一个Symbol实例。

get_symbols()

返回表中Symbol名称的实例列表。

get_children()

返回嵌套符号表的列表。

class symtable.Function

函数或方法的名称空间。这个类继承SymbolTable

get_parameters()

将包含参数名称的元组返回给此函数。

get_locals()

返回包含本函数名称的元组。

get_globals()

在此函数中返回包含全局变量名称的元组。

get_frees()

返回包含此函数中自由变量名称的元组。

class symtable.Class

类的名称空间。这个类继承SymbolTable

get_methods()

返回包含类中声明的方法名称的元组。

class symtable.Symbol

SymbolTable与源中的标识符对应的条目。构造函数不公开。

get_name()

返回符号的名称。

is_referenced()

如果符号在其块中使用,则返回True

is_imported()

如果符号是从导入语句创建的,则返回True

is_parameter()

如果符号是参数则返回True

is_global()

如果符号是全局的,则返回True

is_declared_global()

如果符号是用全局语句声明为全局的,则返回True

is_local()

如果符号位于其块的本地,则返回True

is_free()

如果符号在其块引用,但没有分配到,则返回True

is_assigned()

如果符号在其块分配,则返回True

is_namespace()

如果名称绑定引入新名称空间,则返回True

如果该名称用作函数或类声明的目标,则为true。

例如:

>>> table = symtable.symtable("def some_func(): pass", "string", "exec")
>>> table.lookup("some_func").is_namespace()
True

请注意,单个名称可以绑定到多个对象。如果结果是True,该名称也可以绑定到其他对象,如int或list,但不会引入新的名称空间。

get_namespaces()

返回绑定到这个名字的名字空间列表。

get_namespace()

返回绑定到这个名字的名字空间。如果绑定了多个名称空间,则会引发ValueError

Python

Python 是一种面向对象的解释型计算机程序设计语言,由荷兰人 Guido van Rossum 于1989年发明,第一个公开发行版发行于1991年。 Python 是纯粹的自由软件, 源代码和解释器 CPython 遵循 GPL 协议。Python 语法简洁清晰,特色之一是强制用空白符( white space )作为语句缩进。

主页 https://www.python.org/
源码 https://github.com/python/cpython
版本 2.7
发布版本 2.7.13

Python目录

1.内置常量 | Built-in Constants
2.内置例外 | Built-in Exceptions
3.内置函数 | Built-in Functions
4.内置类型 | Built-in Types
5.编译器 | Compiler
6.加密 | Cryptography
7.数据压缩 | Data Compression
8.数据持久性 | Data Persistence
9.数据类型 | Data Types
10.调试和分析 | Debugging & Profiling
11.开发工具 | Development Tools
12.文件和目录访问 | File & Directory Access
13.文件格式 | File Formats
14.构架 | Frameworks
15.输入 | Importing
16.输入/输出 | Input/ouput
17.国际化 | Internationalization
18.网络 | Internet
19.网络数据 | Internet Data
20.翻译 | Interpreters
21.语言 | Language
22.记录 | Logging
23.Mac OS
24.MS Windows
25.多媒体 | Multimedia
26.联网 | Networking
27.数字与数学 | Numeric & Mathematical
28.操作系统 | Operating System
29.可选操作系统 | Optional Operating System
30.限制执行 | Restricted Execution
31.运行 | Runtime
32.SGI IRIX
33.软件包装与分销 | Software Packaging & Distribution
34.字符串 | String
35.结构化标记 | Structured Markup
36.Tk
37.Unix
38.Python 简介
39.Python pass 语句
40.Python 循环嵌套
41.Python 运算符
42.Python log10() 函数
43.Python log() 函数
44.Python floor() 函数
45.Python fabs() 函数
46.Python exp() 函数
47.Python cmp() 函数
48.Python ceil() 函数
49.Python abs() 函数
50.Python Number(数字)
51.Python pow() 函数
52.Python modf() 函数
53.Python min() 函数
54.Python max() 函数
55.Python asin() 函数
56.Python acos() 函数
57.Python uniform() 函数
58.Python shuffle() 函数
59.Python seed() 函数
60.Python random() 函数
61.Python randrange() 函数
62.Python choice() 函数
63.Python sqrt() 函数
64.Python round() 函数
65.Python radians() 函数
66.Python degrees() 函数
67.Python tan() 函数
68.Python sin() 函数
69.Python hypot() 函数
70.Python cos() 函数
71.Python atan2() 函数
72.Python atan() 函数
73.Python 元组
74.Python 列表(List)
75.Python 字符串
76.Python 字典(Dictionary)
77.Python 日期和时间
78.Python 函数
79.Python 模块
80.Python capitalize()方法
81.Python center()方法
82.Python count() 方法
83.Python expandtabs()方法
84.Python endswith()方法
85.Python encode()方法
86.Python decode()方法
87.Python find()方法
88.Python index()方法
89.Python 异常处理
90.Python isspace()方法
91.Python isnumeric()方法
92.Python islower()方法
93.Python isdigit()方法
94.Python isalpha()方法
95.Python isalnum()方法
96.Python isupper()方法
97.Python istitle()方法
98.Python min()方法
99.Python max()方法
100.Python maketrans()方法