色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

python3.x - Python not 運算符的問題

瀏覽:93日期:2022-06-27 17:43:20

問題描述

>>> a = False + 55

>>> a = not(1) + 5False

如上,將 False 直接進行運算時會作為 0 來計算。使用邏輯運算符 not 時,not(1) 的值為 False 或 0。

但為什么直接將 not(1) 放進算術運算后再次計算的結果為 False?這和 Python 的算法邏輯有關么?

問題解答

回答1:

因為not不是一個函數, 是一個表達式, 不管你not(1)+5 還是 not (1+5), 它的作用也只是將后面的結果取反而已.例如:

>>> not 1 + 2False>>> not (1 + 2)False>>> not (1 + 2) + 1False>>> (not (1 + 2)) + 11回答2:

Python 中 not 運算符的用法Boolean Operations:

not x

if x is false, then True, else False

此外,+運算符的優先級(precedence)高于not運算符,所以not(1) + 5中先計算(1) + 5, 后面的(1)+5作為not運算符的操作數. 舉個例子可以看到:

not(-1) # Falsenot(-1) + 1 # True回答3:

正如上面所說,因為 not operator 的優先級小于 + 所以 not(1)+6 會被翻譯為 not (1)+5關于這些情況,你完全可以通過 dis模塊 來查看具體的過程。>>> import dis>>> dis.dis('a = False + 5') 1 0 LOAD_CONST 3 (5) 3 STORE_NAME 0 (a) 6 LOAD_CONST 2 (None) 9 RETURN_VALUE>>> dis.dis('a = not(1) + 5') 1 0 LOAD_CONST 3 (6) 3 UNARY_NOT 4 STORE_NAME 0 (a) 7 LOAD_CONST 2 (None) 10 RETURN_VALUE

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 韩国精品视频在线观看 | 久久欧美久久欧美精品 | 日本一区二区三区在线 视频观看免费 | 在线精品视频播放 | 一级做a爰片久久毛片人呢 一级做a爰片久久毛片唾 | 一本到不卡| 久久精品免视着国产成人 | 日本在线理论片 | 日韩专区亚洲综合久久 | 九九视频在线看精品 | 步兵一区二区三区在线观看 | 国产一级做a爰片... | 欧美色xxxx| 国产一级做a爰片在线看免费 | 国产91久久精品一区二区 | 国产最猛性xxxxxx69交 | 国产呦精品系列在线 | 在线成人aa在线看片 | 国产三级a三级三级午夜 | 一区毛片 | 国产一区二区三区美女在线观看 | 欧美亚洲国产成人精品 | 欧美日韩一区二区三区四区在线观看 | 视频二区好吊色永久视频 | 国产欧美一区二区日本加勒比 | 国产99久久 | 成人欧美视频在线看免费 | 久久国产精品最新一区 | chinese宾馆自拍hd | 久久精品久久精品 | 欧美不卡一区二区三区 | 亚洲精品久久片久久 | 俄罗斯黄色毛片 | 久久性久久性久久久爽 | 免费真实播放国产乱子伦 | 99精品国产成人一区二区在线 | 国产日韩欧美 | 国产欧美日韩亚洲精品区2345 | 久久网在线 | 操操综合网 | 国产精品久久久久久久久久免费 |