タグ

2013年1月30日のブックマーク (2件)

  • execとローカル変数 - atsuoishimoto's diary

    先日のPyCon JPで、私はまたもやってしまったのである。Hands on の講師という大役を引き受けておきながら、間違った演習用のスクリプトを書いてしまった。昔からの思い込みを元に、大雑把な実験だけで書いてしまったのである。 何を間違えたかというと、Pythonのローカル名前空間の扱いだ。 昔から知っているはずなのに忘れ、http://d.hatena.ne.jp/atsuoishimoto/20101006/1286338675 でも間違えて pokarim さんにご指摘いただき、今回また間違えたんだからタチが悪い。ここはきっちりブログエントリを書いてもう「うっかり」とならないようにしよう。 問題はどんなのかというと、煎じ詰めればこのコードだ。 def spam(): locals()['ret'] = 'ham' return ret print spam() ローカル名前空間の辞

    execとローカル変数 - atsuoishimoto's diary
    cointoss1973
    cointoss1973 2013/01/30
    Python初心者はPythonの動的な特徴を濫用して locals()だのなんだのを使った「賢い」コードを書きたがるが、熟練者はそんなマジカルな処理には手を出さないもので、普段は全く意識しない。
  • Sign in - Google Accounts

    Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode