何が欲しいのは、あなたがこれを行うことができます100000
までi^4
の値を持っているZの場合:
import numpy as np
z = np.array(range(100))
k = 0
while k < len(z) - 1:
k = k+1
if k**4 >= 100000:
break
else:
z[k]=k**4
print(z)
私がこのを計算する最も効率的な方法でわからないんだけど、Iあなたのものと似た構文を保持していたので、変更を理解しやすくなりました。私がしたい方法:
import numpy as np
z = np.array(range(100))
for number in z:
if number**4 <= 100000:
z[number]=number**4
print(number**4)
else:
break
これは、リストの値を編集する以外にも、「i^4
未満100000
された表示値」のあなたの条件を達成しています。
Python的ソリューション使用してリスト内包:
z = range(100)
>>> [x**4 for x in z if x**4 <= 100000]
[0, 1, 16, 81, 256, 625, 1296, 2401, 4096, 6561, 10000, 14641, 20736, 28561, 38416, 50625, 65536, 83521]
'z1 = sum(i
なぜあなたは 'k <277'を使用しているのか分かりません。 'z'は100個しかないので、' k = 101'のときはwhileループは動作しません。 –