用法:
class ast.AST
這是所有 AST 節點類的基礎。實際的節點類派生自
Parser/Python.asdl
文件,該文件在下麵複製。它們在_ast
C 模塊中定義,並在ast
中重新導出。為抽象語法中的每個 left-hand 邊符號定義了一個類(例如,
ast.stmt
或ast.expr
)。此外,在right-hand 一側為每個構造函數定義了一個類;這些類繼承自left-hand 側樹的類。例如,ast.BinOp
繼承自ast.expr
。對於具有備選方案的生產規則(又名“sums”),left-hand 側類是抽象的:隻創建特定構造器節點的實例。ast.T
類的構造函數解析其參數如下:- 如果有位置參數,則必須與
T._fields
中的項目一樣多;它們將被分配為這些名稱的屬性。 - 如果有關鍵字參數,它們會將相同名稱的屬性設置為給定值。
例如,要創建和填充
ast.UnaryOp
節點,您可以使用node = ast.UnaryOp() node.op = ast.USub() node.operand = ast.Constant() node.operand.value = 5 node.operand.lineno = 0 node.operand.col_offset = 0 node.lineno = 0 node.col_offset = 0
或更緊湊的
node = ast.UnaryOp(ast.USub(), ast.Constant(5, lineno=0, col_offset=0), lineno=0, col_offset=0)
- 如果有位置參數,則必須與
相關用法
- Python ast.Assert用法及代碼示例
- Python ast.Attribute用法及代碼示例
- Python ast.AnnAssign用法及代碼示例
- Python ast.Assign用法及代碼示例
- Python ast.AugAssign用法及代碼示例
- Python ast.MatchClass用法及代碼示例
- Python ast.ListComp用法及代碼示例
- Python ast.Lambda用法及代碼示例
- Python ast.IfExp用法及代碼示例
- Python ast.Return用法及代碼示例
- Python ast.Subscript用法及代碼示例
- Python ast.alias用法及代碼示例
- Python ast.Slice用法及代碼示例
- Python ast.NamedExpr用法及代碼示例
- Python ast.MatchAs用法及代碼示例
- Python ast.Try用法及代碼示例
- Python ast.MatchValue用法及代碼示例
- Python ast.Break用法及代碼示例
- Python ast.Load用法及代碼示例
- Python ast.Set用法及代碼示例
注:本文由純淨天空篩選整理自python.org大神的英文原創作品 ast.AST。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。