av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

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

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

瀏覽:107日期: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 編程
相關文章:
主站蜘蛛池模板: 天堂中文在线观看 | 精品伊人久久 | 草b视频 | 香蕉国产在线视频 | 最近最新中文字幕 | 国产激情视频在线观看 | 成人高清视频在线观看 | 久久国产传媒 | av中文字幕在线 | 国产网站在线免费观看 | 免费看黄色视屏 | 亚洲色图婷婷 | 欧美精品在线一区二区三区 | 九九热这里只有精品在线观看 | 三级高清 | 精品国产18久久久久久二百 | 香蕉国产在线视频 | 欧美一级二级在线观看 | 伊人伊成久久人综合网站 | 一区免费视频 | 日韩精品免费一区二区在线观看 | 伊人精品视频 | 日韩一区精品 | 日本一本在线 | 嫩草视频在线 | 国产精品亚洲综合 | 久久久久久国产精品 | 色综合久久久久 | 一区二区三区视频在线 | 91精品国产综合久久久亚洲 | 国产精品完整版 | 欧美日韩国产三级 | 成人精品一区二区三区中文字幕 | 日本 欧美 国产 | 国产一区二区三区 | 成人久草| 成人免费毛片在线观看 | 亚洲精品在线免费 | 99久久免费精品国产男女高不卡 | 欧美成人h版在线观看 | 一区观看|