-4
変数noprimes
で、j
のループで第二のi
を宣言するのは何ですか?最初のi
ループから値を取っていますか、またはi
の値を参照していますか?以下のプログラムを具体化してください
>>> noprimes = [j for i in range(2, 8) for j in range(i*2, 50, i)]
>>> primes = [x for x in range(2, 50) if x not in noprimes]
>>> print primes
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47]
2重の 'for'ループと考えてください。あなたがこれを読んだら理解しやすいかもしれません: '[範囲内のj(i * 2,50、i)の範囲(2、8)]' '。これは有効なPythonの考えではないことに注意してください。 –