Pythonに関するhzkrのブックマーク (2)

  • Pythonのselfはなぜ必要かをJavaScriptのthisで考える - なんたらノート第三期ベータ

    あなたがもしPythonを作る前のGuidoに憑依して - ネットリサーチ - livedoor ニュース が面白すぎた。2位と3位の すべてを式にする lambdaの構文を変える は、同じ願いを別の言い方でしてるような気がした。lambdaにifとforを入れたいをかなえるには、ifとforを式にするか、lambdaに文が入るようにするか、どちらか一方だし。 それはさておき、このエントリの題は、「Pythonにはselfが要る」というGuidoさんの主張について、具体例で理解することです。「こうだったらいいのにな」逆の視点、もしselfがないとどう困るのか、を考えましょう。 そこで、Pythonとは別の母親から産まれた双子、JavaScriptを例に、thisについて考えてみます。Pythonに対して、JavaScriptは「メソッド定義の第一引数に余分なアレがないこと」が特徴でしたね

    Pythonのselfはなぜ必要かをJavaScriptのthisで考える - なんたらノート第三期ベータ
    hzkr
    hzkr 2009/03/27
    よい記事。しかし、JavaScriptのthisの扱いにくさとPythonのselfの面倒さでは、自分の感覚では確かに前者が圧倒的に大変なのだけど、かといってPythonのselfももう少し面倒でなくならないものかは考えたい。。。
  • namedtupleの話 - Doge log

    python2.6から導入されたnamedtupleについてちょっくら書いておくか。 namedtupleって? namedtupleは名前の通り名前付きでアクセスできるtupleを返す。 >>> from collections import namedtuple >>> p = namedtuple('Point', 'x y') >>> p1 = p(11, 22) >>> p1[0] 11 >>> p1[1] 22 >>> p1.x 11 >>> p1.y 22 >>> p2 = p(x = 33, y = 44) >>> p2[0] 33 >>> p2[1] 44 >>> p2.x 33 >>> p2.y 44 >>> とまあこんな感じ。 namedtuple関数に名前とフィールドを渡すと名前付きでアクセスできるものを 作成するものを返す。 仕組み 実際にはnametuple関数

    namedtupleの話 - Doge log
    hzkr
    hzkr 2008/12/02
    文字列テンプレートに流し込んでexecって意外と強引だなー。ダイナミックな言語なんだからもうちょい綺麗な書き方もできそうなものだけど…考えてみよう
  • 1