什么是Python运算子?

J.Z*_*oun 0 python python-2.7 python-3.x

我试图type(+)希望了解有关此运算符在python中如何表示的更多信息,但我知道了SyntaxError: invalid syntax
我的主要问题是将表示操作:“ 3 + 4”的字符串转换为要在Python中计算的实际操作(因此,将int作为返回值:7)。
如果可能,我还尝试避免使用要求os库的简单解决方案。

che*_*ner 7

运算符实际上不是类型,因为它们不是值。它们只是语法的实现,通常由魔术方法+定义(例如,由适当类型的__add__方法定义)。

您必须解析您的字符串:

  1. 首先,将其分解为令牌['3', '+', '4']
  2. 然后,将令牌字符串解析为抽象的语法树(即,存储的东西+具有34作为其操作数的想法)。
  3. 最后,通过将节点上存储的函数应用于子节点中存储的值来评估 AST。