在Python中2**3**4 = 2417851639229258349412352
。 因此,表達式從右到左執行, ,而文檔說從左到右。 是什麼原因?Python:2 ** 3 **的執行順序4
1
A
回答
2
這是正常的數學順序,由右至左:
2 ** (3 ** 4)
+0
你可以用AST來加強:Expr(value = BinOp(left = Num(n = 2),op = Pow(),right = BinOp(left = Num(n = 3) ,right = Num(n = 4))))' –
+1
這是評估順序,OP沒有問題。問題是這種行爲是否與文檔一致。 – tom10
6
的documentation指出,雖然大多數表達式是從左向右計算,比較和指數是右向左計算。
相關問題
- 1. python 3 asyncio:使用run_until_complete(asyncio.wait(corutines_list))執行協程執行順序
- 2. 的Python: 「1-2-3-4」[1,2,3,4]
- 3. 按順序執行Maven 3目標
- 4. goroutines執行順序
- 5. Python類執行事物的順序
- 6. Angular2,TypeScript,Ionic 2代碼執行順序
- 7. Autofac IAutofacActionFilter Web API執行順序2
- 8. 角2成分執行順序
- 9. 執行順序
- 10. 執行順序
- 11. 順序執行
- 12. javascript執行順序
- 13. cfinvoke執行順序
- 14. Javascript順序執行
- 15. 順序執行js
- 16. 在python中順序執行子進程
- 17. 程序的執行順序
- 18. Nodeunit執行順序?
- 19. F#代碼執行順序
- 20. 方案:順序執行
- 21. Haskell的執行順序
- 22. hook_preprocess_node()執行順序
- 23. ASP.Net執行順序
- 24. HTML5順序執行
- 25. 執行順序流
- 26. Javascript執行順序
- 27. GcmTaskService執行順序
- 28. SQLiteOpenHelp執行順序
- 29. 裝飾的執行順序
- 30. @PostConstruct的執行順序
顯示文檔的鏈接。 – Daniel