python顶级组件
顶级组件
Python 解释器可以从多个来源获取其输入:从脚本 作为标准输入或程序参数传递给它,以交互方式键入, 从模块源文件等。本章给出了这些中使用的语法 例。
完整的 Python 程序
虽然语言规范不需要规定语言解释器如何 被调用,拥有一个完整的 Python 程序的概念很有用。一个 完整的Python程序在最小初始化的环境中执行:all 内置和标准模块可用,但尚未初始化, 除了 sys
(各种系统服务),内置(内置 函数、异常和 ) 和__main__
。后者用于 提供本地和全局命名空间以执行完整程序。None
完整 Python 程序的语法是文件输入的语法,如 下一节。
解释器也可以在交互模式下调用;在这种情况下,它确实 不读取和执行完整的程序,而是读取和执行一个语句 (可能是复合)一次。初始环境与 一个完整的程序;每个语句在 __main__
的命名空间中执行。
可以将完整的程序传递给解释器 有三种形式:使用 -c
字符串命令行选项,作为文件 作为第一个命令行参数传递,或作为标准输入传递。如果文件 或标准输入为TTY设备,解释器进入交互模式; 否则,它将文件作为完整程序执行。
文件输入
从非交互式文件读取的所有输入具有相同的形式:
file_input ::= (NEWLINE | statement)*
此语法用于以下情况:
- 解析完整的 Python 程序(从文件或字符串)时;
- 解析模块时;
- 解析传递给
exec()
函数的字符串时;
交互式输入
交互模式下的输入使用以下语法进行分析:
interactive_input ::= [stmt_list] NEWLINE | compound_stmt NEWLINE
请注意,(顶级)复合语句后必须跟一个空行 交互模式;这是帮助解析器检测输入结束所必需的。
表达式输入
eval()
用于表达式输入。它忽略前导空格。这 eval()
的字符串参数必须具有以下形式:
eval_input ::= expression_list NEWLINE*
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本