亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

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

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

瀏覽:83日期: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 編程
相關文章:
主站蜘蛛池模板: 中文字幕一区二区三区四区 | 亚洲日本中文字幕一本 | 黄色字幕网 | 99久久综合国产精品免费 | 国产一区二区三区在线影院 | 在线亚洲国产精品区 | 国产精品一国产精品 | 亚洲国产天堂久久综合网站 | 欧洲做视频在线观看 | 欧美日韩在线视频专区免费 | 国产精品亚洲二区 | 久久黄色影院 | 精品一区二区三区在线成人 | 久久亚洲精品一区成人 | 一级毛片在线看 | 国产在线主播 | 国产younv交在线视频 | 福利在线观看视频 | 国产日韩精品视频 | 日本一本在线视频 | 91在线丨亚洲 | 国产精品亚洲专区在线播放 | 国产欧美综合在线观看第七页 | 亚洲区视频 | 在线观看亚洲精品国产 | 国产片免费 | 国产一区二区三区四 | 可以免费观看的黄色网址 | 亚洲免费影视 | 国产亚洲综合成人91精品 | 2021最新国产成人精品免费 | 国产91精品高跟丝袜在线 | 国产色综合天天综合网 | 欧美日韩高清不卡免费观看 | 中文字幕专区高清在线观看 | 国产成人一区在线播放 | 国产成人啪午夜精品网站 | 一区免费视频 | 亚洲第一网站免费视频 | 欧美特黄aaaaaaaa大片 | a毛片免费全部播放完整成 a毛片免费观看 |