Pythonではどちらが高速ですか:x **。5またはmath.sqrt(x)?

いいえ:

私はこれをしばらくの間考えていました。タイトルが言うように、どちらが速いのか、実際の機能ですか、それとも単に半分の電力に引き上げますか?

更新

これは時期尚早の最適化の問題ではありません。これは、基礎となるコードが実際にどのように機能するかという問題です。Pythonコードが機能する方法の理論は何ですか?

これらの方法の違いを本当に知りたかったので、Guido van Rossumにメールを送りました。

私のメール:

Pythonで平方根を行う方法は少なくとも3つあります:math.sqrt、「**」演算子、およびpow(x、.5)。これらのそれぞれの実装の違いに興味があります。効率に関してはどちらが良いですか?

彼の反応:

powと**は同等です。math.sqrtは複素数では機能せず、Cのsqrt()関数にリンクします。どちらが速いかわかりません...

Claudiu:

math.sqrt(x)はよりもはるかに高速ですx**0.5

import math
N = 1000000
%%timeit
for i in range(N):
    z=i**.5

10ループ、最高3:ループあたり156 ms

%%timeit
for i in range(N):
    z=math.sqrt(i)

10ループ、最高3:ループあたり91.1ミリ秒

Python 3.6.9(ノートブックを使用

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

x <5または5> xのどちらが良いですか?

分類Dev

Rのsqrt(9)とsqrt(x = 9)の違いは何ですか?

分類Dev

Python 3.8でsqrt(x * x + y * y)!= math.hypot(x、y)なのはなぜですか?

分類Dev

sqrt(x + a)の数値的に安定した評価-sqrt(x)

分類Dev

整数ceil(sqrt(x))

分類Dev

COUNT(id)またはMAX(id)-どちらが高速ですか?

分類Dev

Python 3のpow(x、y、z)とx ** y%zの速度のあいまいさ。どちらが効率的ですか?

分類Dev

PHPでは、どちらが高速ですか:preg_splitまたはexplode?

分類Dev

cos(x)/ sqrt(x)を0から無限大までユーザー定義の精度で積分する

分類Dev

x86-64の場合はimm64とm64のどちらが速いですか?

分類Dev

OpenCL / C pow(x、0.5)!= sqrt(x)

分類Dev

.NETアセンブリがx86またはx64のどちら用にビルドされたかを確認するにはどうすればよいですか?

分類Dev

C ++ 11ではどちらがより正確で高速ですか:switch-caseまたはif(.. || .. || ..)?

分類Dev

PythonシェルがOS Xで32ビットモードと64ビットモードのどちらで実行されているかを確認するにはどうすればよいですか?

分類Dev

DialogflowSDKまたはDialogflowREST APIは、応答時間の点でどちらが高速ですか?

分類Dev

2560 x 1440解像度:Mini DisplayPortまたはHDMIのどちらが優れていますか?

分類Dev

.NETでは、「for」または「foreach」のどちらのループが高速に実行されますか?

分類Dev

sqrt(x * x)≠xとなるIEEE倍精度

分類Dev

Python 3でのmath.log2(x)の時間計算量はどれくらいですか?

分類Dev

どちらの「if」構文が高速ですか-ステートメントまたは三項演算子?

分類Dev

複数の単一のINSERTまたは1つの複数行のINSERTのどちらが高速ですか?

分類Dev

Crystal、ハッシュ、またはルックアップのケース式のどちらが高速ですか?

分類Dev

1333 MHzCL9または1600MHz CL10のどちらのRAMが高速ですか?

分類Dev

PHP foreachでは、どちらが高速で、条件を否定するか、継続しますか?

分類Dev

C ++->どちらが速いですか?int a(5); またはinta = 5;

分類Dev

Pythonでx [x <2] = 0はどういう意味ですか?

分類Dev

sympyへの統合はx * cos(n * pi * x / L)では機能しませんが、sqrt(1。)* x * cos(n * pi * x / L)では機能します。以下のコードスニペットをご覧ください

分類Dev

number(x)とparseFloat(x)のどちらが良いですか?

分類Dev

Mac OS Xはどこから来たのですか?

Related 関連記事

  1. 1

    x <5または5> xのどちらが良いですか?

  2. 2

    Rのsqrt(9)とsqrt(x = 9)の違いは何ですか?

  3. 3

    Python 3.8でsqrt(x * x + y * y)!= math.hypot(x、y)なのはなぜですか?

  4. 4

    sqrt(x + a)の数値的に安定した評価-sqrt(x)

  5. 5

    整数ceil(sqrt(x))

  6. 6

    COUNT(id)またはMAX(id)-どちらが高速ですか?

  7. 7

    Python 3のpow(x、y、z)とx ** y%zの速度のあいまいさ。どちらが効率的ですか?

  8. 8

    PHPでは、どちらが高速ですか:preg_splitまたはexplode?

  9. 9

    cos(x)/ sqrt(x)を0から無限大までユーザー定義の精度で積分する

  10. 10

    x86-64の場合はimm64とm64のどちらが速いですか?

  11. 11

    OpenCL / C pow(x、0.5)!= sqrt(x)

  12. 12

    .NETアセンブリがx86またはx64のどちら用にビルドされたかを確認するにはどうすればよいですか?

  13. 13

    C ++ 11ではどちらがより正確で高速ですか:switch-caseまたはif(.. || .. || ..)?

  14. 14

    PythonシェルがOS Xで32ビットモードと64ビットモードのどちらで実行されているかを確認するにはどうすればよいですか?

  15. 15

    DialogflowSDKまたはDialogflowREST APIは、応答時間の点でどちらが高速ですか?

  16. 16

    2560 x 1440解像度:Mini DisplayPortまたはHDMIのどちらが優れていますか?

  17. 17

    .NETでは、「for」または「foreach」のどちらのループが高速に実行されますか?

  18. 18

    sqrt(x * x)≠xとなるIEEE倍精度

  19. 19

    Python 3でのmath.log2(x)の時間計算量はどれくらいですか?

  20. 20

    どちらの「if」構文が高速ですか-ステートメントまたは三項演算子?

  21. 21

    複数の単一のINSERTまたは1つの複数行のINSERTのどちらが高速ですか?

  22. 22

    Crystal、ハッシュ、またはルックアップのケース式のどちらが高速ですか?

  23. 23

    1333 MHzCL9または1600MHz CL10のどちらのRAMが高速ですか?

  24. 24

    PHP foreachでは、どちらが高速で、条件を否定するか、継続しますか?

  25. 25

    C ++->どちらが速いですか?int a(5); またはinta = 5;

  26. 26

    Pythonでx [x <2] = 0はどういう意味ですか?

  27. 27

    sympyへの統合はx * cos(n * pi * x / L)では機能しませんが、sqrt(1。)* x * cos(n * pi * x / L)では機能します。以下のコードスニペットをご覧ください

  28. 28

    number(x)とparseFloat(x)のどちらが良いですか?

  29. 29

    Mac OS Xはどこから来たのですか?

ホットタグ

アーカイブ