[英]python : meaning of -----if not (p%q):
這是我從紙上得到的代碼,
我想知道的意思
如果不是 (p%q)
x = 0
p = 2
while(p<7):
q=2
while(q<p):
if not (p%q):q=p
q+=1
if(q>p):x+=p
p+=1
print(x)`
條件not (p % q)
等價於p % q == 0
。
對於數字,零是“假的”,所有其他的都是“真”: https://docs.python.org/3/library/stdtypes.html#truth 。 因此,我們有
“ p % q == 0
” iff(即當且僅當)“ p % q is False
” iff “ not (p % q) is True
”。
因此, if p % q == 0:
等價於if not (p % q) is True:
,這又等價於if not (p % q):
,因為is True
部分可以省略。
它本質上是說if True
(如果模== 0)。 模符號 (%) 獲取除法的余數。 模運算符 (%) 被認為是算術運算。 因此,由於它正在執行2/2
,因此我們得到模數 0。現在該語句是if not 0:
。
話雖如此,Python 中有真值和假值:
評估為 False 的值被認為是 Falsy。 評估為 True 的值被認為是真實的。
一些真實的價值觀包括:
非空序列或 collections
不為零的數值。
一些虛假值包括:
因此,代碼現在轉換if not False:
(If the modulo,= 0),這與if True
(If the modulo == 0) 相同。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.