在Python中pipe道字符

我在函数调用中看到一个“pipe道”字符( | ):

 res = c1.create(go, come, swim, "", startTime, endTime, "OK", ax|bx) 

ax|bxpipe道的含义是什么?

这是一个整数的按位或 。 例如,如果axbx中的一个或两个都是1 ,则评估为1 ,否则评估为0 。 它也适用于其他整数,例如15 | 128 = 143 15 | 128 = 143 ,即00001111 | 10000000 = 10001111 00001111 | 10000000 = 10001111二进制。

这也是联合运营商

 set([1,2]) | set([2,3]) 

按位或 。

是的,以上所有答案都是正确的。

虽然你可以find更多的“|”用例,如果它是一个类使用的重载操作符,例如,

https://github.com/twitter/pycascading/wiki#pycascading

 input = flow.source(Hfs(TextLine(), 'input_file.txt')) output = flow.sink(Hfs(TextDelimited(), 'output_folder')) input | map_replace(split_words, 'word') | group_by('word', native.count()) | output 

在这个特定的用例pipe道“|” 运营商可以更好地认为是一个unixpipe道运营商。 但是我同意,按位运算符和联合集合运算符是“|”更常见的用例 在Python中。

这是一个按位或 – 或。

所有Python操作符的文档都可以在Python文档的索引 – 符号页面find。