本文共 1065 字,大约阅读时间需要 3 分钟。
对 Python执行代码的五步骤的具体应用都了解吗?想详细了解Python执行代码在实际运行中实际操作步骤吗?如果你对其有想了了解的欲望的话,你就可以点击我们的文章对其进行一个更好的了解。
Python执行代码要经过如下过程:
1. Tokenizer进行词法分析,把源程序分解为Token
2. Parser根据Token创建CST
3. CST被转换为AST
4. AST被编译为字节码
5. 执行字节码
当执行Python代码的时候,以代码存放在文件中的情况为例,Python会调用PyParser_ASTFromFile函数将文件的代码内容转换为AST:
mod_ty PyParser_ASTFromFile(FILE *fp, const char *filename, int start, char *ps1, char *ps2, PyCompilerFlags *flags, int *errcode, PyArena *arena) { mod_ty mod; perrdetail err; node *n = PyParser_ParseFileFlags(fp, filename, &_PyParser_Grammar, start, ps1, ps2, &err, PARSER_FLAGS(flags)); if (n) { mod = PyAST_FromNode(n, flags, filename, arena);PyNode_Free(n); return mod; } else { err_input(&err); if (errcode) *errerrcode = err.error; return NULL; } }
在
PyParser_ParseFileFlags
在Python执行代码中还要把文件转换成CST之后,PyAST_FromNode函数会把CST转换成AST。此函数定义在include\ast.h中:
PyAPI_FUNC(mod_ty) PyAST_FromNode(const node *, PyCompilerFlags *flags, const char *, PyArena *);
以上就是对Python执行代码要经过相关的内容的介绍,忘你会有所收获。
转载地址:http://knkai.baihongyu.com/