21
A
回答
51
你的表情是一樣的:
1+(+(+2))
任何數字表達式都可以在-
之前使其成爲負數,或者+
不做任何事(該選項對稱存在)。隨着負極標誌:
1-(-(2)) = 1-(-2)
= 1+2
= 3
和
1-(-(-2)) = 1-(2)
= -1
我看你明確你的問題說你來自一個C的背景。在Python中,C中沒有像++
和--
這樣的增量運算符,這可能是您混淆的根源。遞增或遞減在Python可變i
或j
使用這種樣式:
i += 1
j -= 1
4
1 +(+(+ 2))= 3
1 - (-2)= 3
1 - ( - ( - 2))= -1
13
附加+不是遞增器(如++ ++或++)。他們只是表明這個數字是積極的。
沒有這樣的++操作符。但是有一個一元運算符和一個一元運算符。一元+運算符對其參數沒有影響。一元運算符否定其運算符或將其乘以-1。
+1
- > 1
++1
- > 1
這是相同的+(+(1))
1+++2
- > 3 ,因爲它是與1 +(+(+(2))相同
同樣,你可以做--1來表示 - (-1),它是+1。
--1
- > 1
爲了完整性沒有*一元opeartor。所以* 1是一個錯誤。但是有一個** 運算符是強大的,它需要2個參數。
2**3
- > 8
1
認爲它作爲1 +(1 *(+ 1 * 2)))。第一個+是運算符,後面的加號是第二個操作數(= 2)的符號。
就像1 --- 2是一樣的1 - - ( - (2))或1(-1 *( - 1 *(2))
1
我相信它被解析爲,在第一+作爲二進制操作(添加),其餘爲一元操作(請正)
1 + (+(+2))
3
的一元 - (減號)運算符產生其數字的否定論點。
一元+(加號)運算符使其數值參數保持不變。
>>> +2
2
>>> ++2
2
>>> +++2
2
>>> -2
-2
>>> --2
2
>>> ---2
-2
>>> 1+(++2)
3
0
這很簡單。 Python中沒有後增量或後減量運算符。
在這裏看到:http://mail.python.org/pipermail/python-list/2006-January/361771.html
相關問題
- 1. 爲什麼NUM = 1 - - 「2」 等於3個
- 2. 爲什麼-2?爲什麼不是-3或-1?
- 3. Common Lisp爲什麼(列表+ 1 2)評估爲('(+ 1 2)1 2)
- 4. 爲什麼(3&0x1111)= 1?
- 5. -2 <1 = false。爲什麼?
- 6. 爲什麼1的補-2
- 7. 爲什麼是1 -2
- 8. 爲什麼1%2等於1?
- 9. lisp中'((1 2)(3 4))和'('(1 2)'(3 4))之間的區別是什麼?
- 10. 爲什麼1 && 2返回2?
- 11. 爲什麼(1 + 3)[a]與[1 + 3]相同?
- 12. 爲什麼R命令文件爲1 10 100不是1 2 3?
- 13. 爲什麼「echo'2'。print(2)+ 3」print 521?
- 14. 爲什麼`(['1','2','3'])。map(parseInt)`得不到正確的結果?
- 15. 爲什麼c#總是說3/2是1?
- 16. 爲什麼下面的代碼打印「0 1 2 3」?
- 17. 爲什麼不能2-3樹「允許」度1
- 18. 爲什麼 「警報(3> 2> 1)」 警惕 「假」
- 19. 在csh中,爲什麼4 - 3 + 1 == 0?
- 20. 1 + 1/2 + 1/3 + - + 1/n =?
- 21. 爲什麼字符串[1 ..- 1]的工作,但不串[-3..1]
- 22. 爲什麼1 <2 <3正確評估,但3> 2> 1不正確?
- 23. (和1 2 3)在R5RS中工作時爲什麼(申請和'(1 2 3))不起作用?
- 24. 爲什麼[1,[2,3] = [1,[2,3]]
- 25. C爲什麼3除以2等於0,而是1等於1?
- 26. 爲什麼「double z = 1/3」導致0.0?
- 27. 爲什麼`(state == 1 && 3)`有意義?
- 28. 爲什麼(1 + 1)和1返回1而不是2?
- 29. 3/2和-3/2有什麼區別?
- 30. 1 ==(int)0.5 * 2 => false,1 ==((int)0.5 * 2)=> true,爲什麼?
這是否意味着沒有增加運營商在蟒蛇? – udpsunil 2009-01-22 17:52:39
要在python中增加一個變量i:i + = 1 – 2009-01-22 17:56:05
-1:這個問題對++和 - 做了大量的假設:在http://www.python.org/doc/2.5.2/ref/expressions.html – 2009-01-22 23:12:16