繁体   English   中英

"|" 和有什么不一样和“+”?

[英]What is the difference between "|" and "+"?

我最近一直在做代码战挑战并偶然发现:使用 pipe 符号添加两个项目。 我在我的 python 环境中尝试了这个,我很好奇它的作用以及它与 + 符号有何不同。

print(5 | 2)

这当然输出到 7。在我正在查看的代码战问题中,其中一个解决方案使用它来将两组相加。 这是什么意思?

| 是按位或。 在您的示例中,发生了以下情况:

0101
0010 |
---
0111

这是二进制的7。

如果要计算,例如5 | 9 5 | 9 . 你会得到 13,而不是 14,因为| 不是+

旁注:如果你申请| 对两个按位与返回 0 的数字,然后加法和按位或返回相同的结果。

在 2 和 5 的情况下, 2 & 5 = 0 ,所以+| 返回相同的结果。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM