18321


素数を見つけるジェネレータ関数とそれを利用する以下のソースコードにおいて

[code]

    for c in range(10):
      print(next(i))
    
[/code]

というコードのcをどこで利用しているのかがどうしても理解できません。  
なぜcという繰り返し変数を１度添えただけで素数が１０まで表示されるのでしょうか？  
どなたか教えて頂けませんでしょうか

[code]

    def get_primes(x=2):
      while True:
        for i in range(2,x):
          if x % i == 0:
            break
        else:
          yield x
        x += 1
    
    i = get_primes()
    for c in range(10):
      print(next(i))
    
    2
    3
    5
    7
    11
    13
    17
    19
    23
    29
    
[/code]


CC BY-SA 3.0
2015-11-01T12:41:19.880
18305
2015-11-02T19:42:19.893
2015-11-02T19:42:19.893
76
13067
question
python
for文中で実際には利用されていない変数


すでにコメントがある通り、`c` は使われていません。形式上そこに変数が必要なので `c` が使われているようです。

ただ、Python では、このような代入はされども参照されない変数には `_` もしくは、`dummy`
という変数名を使うことが多いです。[Pylint](http://www.pylint.org/)
のような文法チェックツールでは、参照されない変数に警告が出ますが、`_` や `dummy` といった変数には警告が出ないようになっています。


CC BY-SA 3.0
2015-11-02T07:24:47.033
18321
2015-11-02T07:24:47.033
2521
18305
answer