C 和python 計算時的區別

2021-10-19 18:25:56 字數 671 閱讀 4732

事情是這樣的 同乙份** c++跑的通 翻譯成python後執行出錯

l_method2 = math.sqrt((5

* rotated_z31 + rotated_z11)/(

6* rotated_z11)

)

經過反覆測試 除錯發現

在c++中 執行sqrt(x)(開平方)函式時 當x為負數時 結果為 -nan(ind) 不會報錯

但是在python中 就會報 valueerror 的錯誤

同理 當除數為零時 c++的執行結果為 -nan(ind) 不會報錯

但是在python中 就會報 zerodivisionerror 的錯誤

再有 當分子分母同時為零時 python會給出警告

runtimewarning: invalid value encountered in double_scalars

當然 警告不會影響程式的執行 不用理會

此時 要想python**也可跑通

可以使用try…except…異常丟擲

更新在python中 6 // -5 的結果為 -2

而在c中 6 / -5 的結果為 -1

要使python中的結果等於-1 應使用int(6 / -5) 這樣結果就是-1了 哈哈 神奇呀

C 和python中的變數定義時的區別

這張圖比較全面的顯示了python和c變數定義時的區別 c c 變數對應記憶體中的一塊區域,當修改這個值時,直接修改記憶體區域中的值。python 變數只是對一塊存放指定值的記憶體區域的引用,賦值時是讓該變數引用另一塊存放新值的記憶體區域。因此在賦值時等號左邊的變數類似於標籤,等號右邊的是值對應的位...

python和c 的區別

1 執行效率 c python python 和c 最終都會變成cpu指令來跑,但一般情況下,比如反轉和合併兩個字串,python最終轉換出來的cpu指令會比c 多很多。首先,python東西比c 多,經過了更多層,python中甚至連數字都是object 其次,python是解釋執行的,和物理機c...

LocalDateTime的轉換和計算時間的差

localdatetime now localdatetime.now system.out.println 計算兩個時間的差 localdatetime end localdatetime.now duration duration duration.between now,end long da...