Considere o seguinte exemplo:
with open('a.txt') as f:
pass
# Is f supposed to be defined here?
Eu li a documentação da linguagem (2.7) para with-statement e também para PEP-343, mas pelo que eu posso dizer eles não dizem nada sobre este assunto.
No CPython 2.6.5 fparece estar definido fora do bloco com, mas prefiro não confiar em um detalhe de implementação que possa mudar.