Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

forはiterableなものであれば要素でもブン回せる

forはiterableなものであれば要素でもブン回す事ができます。
公式には、以下のように記載されています。

for 文は、シーケンス (文字列、タプルまたはリスト) や、その他の反復可能なオブジェクト (iterable object) 内の要素に渡って反復処理を行うために使われます:

実際のところ

通常、リスト型の要素に対しforをぶん回す事はできません。

for s in [1,2,3,'foobar'][2]:
  print(s)
#>> Traceback (most recent call last):
#>>  File "<stdin>", line 1, in <module>
#>> TypeError: 'int' object is not iterable

rangeのように、それ自体がforの対象になるようなオブジェクトの場合、ぶん回す事が可能です。

for s in [1,2,3,range(1,4)][3]:
  print(s)
#>> 1
#>> 2
#>> 3

文字列も

for s in [1,2,3,'foobar'][3]:
  print(s)
#>> f
#>> o
#>> o
#>> b
#>> a
#>> r