这对<<<<<<用Python表示

时间:2014-04-15 03:40:42

标签: python pyparsing

我遇到了'<<'的使用在使用pyparsing模块的Python示例中:

whereExpression << whereCondition + ZeroOrMore( ( and_ | or_ ) + whereExpression )

它显然不是二元左移运算符,但我没有在任何Python参考中找到它。有人可以解释一下吗?谢谢。

1 个答案:

答案 0 :(得分:10)

与任何运算符一样,类可以重载<<以定义自己的行为。您给出的示例看起来就像是使用pyparsing的代码。这是一个解析器库,以这种方式重载运算符。 <<此处更新先前定义的占位符令牌的内容。阅读有关pyparsing的文档,了解有关其工作原理的更多信息。

底线是<<可以表示任何内容,就像+<可以表示任何内容一样,因为运算符的行为取决于它们所操作的对象的类型。您必须知道对象的类型才能理解行为。