`for` とか `while` みたいな制御構造を使うと、中でだけ使っていたつもりの変数がふつうに外からも見えるので、もしも `for` を選ぶ機会があったらその辺も注意しておくと良いかもです。

うまく説明できた気がしないのでコードで:

```ruby
people = %w(charlie bob alice)

for person in people
  alpha = person
end

people.each do |person|
  bravo = person
end

alpha # => "alice"
bravo # NameError
```

[るりま](http://docs.ruby-lang.org/ja/2.1.0/doc/spec=2fcontrol.html#for) も参考に。