0

我想知道什么| 在python中做。我认为它选择了更大的价值,但似乎我错了,因为这是我最初尝试的。

>>> a = 10
>>> b = 5
>>> a | b
10

然后我尝试了这个:

>>> a = 10
>>> b = -1
>>> a | b
-1

我尝试了其他一些负数,它继续返回-1,所以据我所知,它也没有选择最小值,所以它在做什么?

4

3 回答 3

6

它按位“或”。

http://en.wikipedia.org/wiki/Bitwise_operation

它也在 C、C++、Java、Javascript 等中。

于 2013-11-09T23:49:25.583 回答
2

管道字符是bitwise or运算符。请参阅文档

如果要选择更大的值,请使用max内置:

>>> max(1, 2)
2
于 2013-11-09T23:49:25.343 回答
1

有人在这里开玩笑:P

|运算符是“按位或”运算符。在您的示例中:

10 | 5意味着(以位为单位):

  1010
| 0101
= 1111

这使:

>>> a = 10
>>> b = 5
>>> a | 5
15

(在我的 Python2.7 中:P)

于 2013-11-09T23:54:56.853 回答