numpy.power があかんかったから対数は? ということでやってみました。
とりあえず、バージョン。
import sys sys.version >>>'3.8.12 (default, Oct 12 2021, 03:01:40) [MSC v.1916 64 bit (AMD64)]' import numpy as np np.__version__ >>'1.20.3'
こんな感じで試してみると、
import numpy as np for i in range(1,129): a=pow(2,i) try: print(f"{i} {np.log(a)} ",end="") except: print(f"{i} error,log ",end="") pass try: print(f" {np.log10(a)} " ,end="") except: print(" error,log10 ",end="") pass try: print(f" {np.log2(a)} ",end="") except: print(" error,log2 ",end="") pass try: print(f" {np.log1p(a)} ") except: print(" error,log1p ")
以下のようになります。
1 0.6931471805599453 0.3010299956639812 1.0 1.0986122886681098 2 1.3862943611198906 0.6020599913279624 2.0 1.6094379124341003 3 2.0794415416798357 0.9030899869919435 3.0 2.1972245773362196 4 2.772588722239781 1.2041199826559248 4.0 2.833213344056216 5 3.4657359027997265 1.505149978319906 5.0 3.4965075614664802 6 4.1588830833596715 1.806179973983887 6.0 4.174387269895637 7 4.852030263919617 2.1072099696478683 7.0 4.859812404361672 8 5.545177444479562 2.4082399653118496 8.0 5.54907608489522 9 6.238324625039508 2.709269960975831 9.0 6.240275845170769 10 6.931471805599453 3.010299956639812 10.0 6.932447891572509 11 7.6246189861593985 3.3113299523037933 11.0 7.6251071482389 12 8.317766166719343 3.612359947967774 12.0 8.318010277546872 13 9.010913347279288 3.9133899436317554 13.0 9.011035410141815 14 9.704060527839234 4.214419939295737 14.0 9.704121561132915 15 10.39720770839918 4.515449934959718 15.0 10.397238225511654 16 11.090354888959125 4.816479930623699 16.0 11.090370147631774 17 11.78350206951907 5.11750992628768 17.0 11.783509698884497 18 12.476649250079015 5.418539921951662 18.0 12.476653064769005 19 13.16979643063896 5.719569917615643 19.0 13.169798337985775 20 13.862943611198906 6.020599913279624 20.0 13.862944564872768 21 14.556090791758852 6.321629908943605 21.0 14.556091268595896 22 15.249237972318797 6.622659904607587 22.0 15.249238210737348 23 15.942385152878742 6.923689900271567 23.0 15.942385272088025 24 16.635532333438686 7.224719895935548 24.0 16.63553239304333 25 17.328679513998633 7.52574989159953 25.0 17.328679543800956 26 18.021826694558577 7.826779887263511 26.0 18.021826709459738 27 18.714973875118524 8.127809882927492 27.0 18.714973882569105 28 19.408121055678468 8.428839878591473 28.0 19.408121059403758 29 20.101268236238415 8.729869874255455 29.0 20.10126823810106 30 20.79441541679836 9.030899869919436 30.0 20.79441541772968 31 21.487562597358306 9.331929865583417 31.0 21.487562597823967 32 22.18070977791825 9.632959861247398 32.0 22.18070977815108 33 22.873856958478196 9.93398985691138 33.0 22.87385695859461 34 23.56700413903814 10.23501985257536 34.0 23.567004139096348 35 24.260151319598087 10.536049848239342 35.0 24.26015131962719 36 24.95329850015803 10.837079843903323 36.0 24.953298500172583 37 25.646445680717978 11.138109839567305 37.0 25.646445680725254 38 26.33959286127792 11.439139835231286 38.0 26.33959286128156 39 27.03274004183787 11.740169830895267 39.0 27.032740041839688 40 27.725887222397812 12.041199826559248 40.0 27.725887222398722 41 28.419034402957756 12.34222982222323 41.0 28.41903440295821 42 29.112181583517703 12.64325981788721 42.0 29.11218158351793 43 29.805328764077647 12.944289813551192 43.0 29.80532876407776 44 30.498475944637594 13.245319809215173 44.0 30.49847594463765 45 31.191623125197538 13.546349804879155 45.0 31.191623125197566 46 31.884770305757485 13.847379800543134 46.0 31.8847703057575 47 32.57791748631743 14.148409796207115 47.0 32.57791748631744 48 33.27106466687737 14.449439791871097 48.0 33.27106466687738 49 33.96421184743732 14.750469787535078 49.0 33.96421184743732 50 34.657359027997266 15.05149978319906 50.0 34.657359027997266 51 35.35050620855721 15.35252977886304 51.0 35.35050620855721 52 36.04365338911715 15.653559774527022 52.0 36.04365338911715 53 36.7368005696771 15.954589770191003 53.0 36.7368005696771 54 37.42994775023705 16.255619765854984 54.0 37.42994775023705 55 38.123094930796995 16.556649761518965 55.0 38.123094930796995 56 38.816242111356935 16.857679757182947 56.0 38.816242111356935 57 39.50938929191688 17.158709752846928 57.0 39.50938929191688 58 40.20253647247683 17.45973974851091 58.0 40.20253647247683 59 40.89568365303678 17.76076974417489 59.0 40.89568365303678 60 41.58883083359672 18.06179973983887 60.0 41.58883083359672 61 42.281978014156664 18.362829735502853 61.0 42.281978014156664 62 42.97512519471661 18.663859731166834 62.0 42.97512519471661 63 43.66827237527655 18.964889726830815 63.0 43.66827237527655 64 error,log error,log10 error,log2 error,log1p 65 error,log error,log10 error,log2 error,log1p 66 error,log error,log10 error,log2 error,log1p 67 error,log error,log10 error,log2 error,log1p 68 error,log error,log10 error,log2 error,log1p 69 error,log error,log10 error,log2 error,log1p 70 error,log error,log10 error,log2 error,log1p 71 error,log error,log10 error,log2 error,log1p 72 error,log error,log10 error,log2 error,log1p 73 error,log error,log10 error,log2 error,log1p 74 error,log error,log10 error,log2 error,log1p 75 error,log error,log10 error,log2 error,log1p 76 error,log error,log10 error,log2 error,log1p 77 error,log error,log10 error,log2 error,log1p 78 error,log error,log10 error,log2 error,log1p 79 error,log error,log10 error,log2 error,log1p 80 error,log error,log10 error,log2 error,log1p 81 error,log error,log10 error,log2 error,log1p 82 error,log error,log10 error,log2 error,log1p 83 error,log error,log10 error,log2 error,log1p 84 error,log error,log10 error,log2 error,log1p 85 error,log error,log10 error,log2 error,log1p 86 error,log error,log10 error,log2 error,log1p 87 error,log error,log10 error,log2 error,log1p 88 error,log error,log10 error,log2 error,log1p 89 error,log error,log10 error,log2 error,log1p 90 error,log error,log10 error,log2 error,log1p 91 error,log error,log10 error,log2 error,log1p 92 error,log error,log10 error,log2 error,log1p 93 error,log error,log10 error,log2 error,log1p 94 error,log error,log10 error,log2 error,log1p 95 error,log error,log10 error,log2 error,log1p 96 error,log error,log10 error,log2 error,log1p 97 error,log error,log10 error,log2 error,log1p 98 error,log error,log10 error,log2 error,log1p 99 error,log error,log10 error,log2 error,log1p 100 error,log error,log10 error,log2 error,log1p 101 error,log error,log10 error,log2 error,log1p 102 error,log error,log10 error,log2 error,log1p 103 error,log error,log10 error,log2 error,log1p 104 error,log error,log10 error,log2 error,log1p 105 error,log error,log10 error,log2 error,log1p 106 error,log error,log10 error,log2 error,log1p 107 error,log error,log10 error,log2 error,log1p 108 error,log error,log10 error,log2 error,log1p 109 error,log error,log10 error,log2 error,log1p 110 error,log error,log10 error,log2 error,log1p 111 error,log error,log10 error,log2 error,log1p 112 error,log error,log10 error,log2 error,log1p 113 error,log error,log10 error,log2 error,log1p 114 error,log error,log10 error,log2 error,log1p 115 error,log error,log10 error,log2 error,log1p 116 error,log error,log10 error,log2 error,log1p 117 error,log error,log10 error,log2 error,log1p 118 error,log error,log10 error,log2 error,log1p 119 error,log error,log10 error,log2 error,log1p 120 error,log error,log10 error,log2 error,log1p 121 error,log error,log10 error,log2 error,log1p 122 error,log error,log10 error,log2 error,log1p 123 error,log error,log10 error,log2 error,log1p 124 error,log error,log10 error,log2 error,log1p 125 error,log error,log10 error,log2 error,log1p 126 error,log error,log10 error,log2 error,log1p 127 error,log error,log10 error,log2 error,log1p 128 error,log error,log10 error,log2 error,log1p
修正法は
a=pow(2,i) # a=pow(2.,i)
int を float にするだけです。よしなに。