pythonに関するgab_kmのブックマーク (4)

  • Pythonリスト内包表記文法 低速マスター - When it’s ready.

    リスト内包表記(LC)使った方が圧倒的にコードが読みやすく、短くなる。慣れてないという理由で使われてない気がするので今後の自分のためにも、メモを残す。 LCは基的に、ListやHashを処理する際に使用される。例えば、規則性のある並びのListが欲しい時などに利用すると良い。 1, 基礎 リストの作成 forの前が処理、forからList名までがひとつのforの段落で前から評価される。 src_list = [1,2,3,4,5] print [x for x in src_list] # [1,2,3,4,5] リストの作成2 for部で取り出された要素が、その後ろif部で評価され真だったものだけが、初めのx*2に渡され処理される(この場合は、2.4だけ) src_list = [1,2,3,4,5] print [x*2 for x in src_list if x % 2 == 0

    Pythonリスト内包表記文法 低速マスター - When it’s ready.
    gab_km
    gab_km 2012/10/30
    Pythonのリスト内包表記をいつも忘れてしまうので。
  • データ駆動テストを nose と pytest でやってみた - forest book

    pytest で初めてテストを書いてみました。 今度こそ帰るー、py.test を使って初めてテストを書いた、評判通りすごく良い 2012-02-07 19:48:52 via TweetDeck @t2y noseと比べた感想とか聴きたいです。 2012-02-07 19:55:04 via web to @t2y @methane @t2y テストがこけたときまともなレポートをはくのがpy.testのいいところ 2012-02-07 19:56:34 via twicca to @methane nose と比べて、データ駆動テスト *1 *2 の違いが大きかったのでまとめてみます。 準備 以下の素数判定を行うテスト対象関数があるとします。 PRIME = {2: True, 3: True, 4: False, 5: True, 6: False, 7: True} def is_p

    gab_km
    gab_km 2012/06/18
    やっぱりpy.test面白そうだなぁ。
  • Tornado による非同期 Web サーバーの構築方法 - WebOS Goodies

    WebOS Goodies へようこそ! WebOS はインターネットの未来形。あらゆる Web サイトが繋がり、共有し、協力して創り上げる、ひとつの巨大な情報システムです。そこでは、あらゆる情報がネットワーク上に蓄積され、我々はいつでも、どこからでも、多彩なデバイスを使ってそれらにアクセスできます。 WebOS Goodies は、さまざまな情報提供やツール開発を通して、そんな世界の実現に少しでも貢献するべく活動していきます。 先日、仕事で HTTP リクエストを中継するリバースプロキシのような Web サーバーを作る必要があり、パフォーマンスの要求もけっこう高くなりそうだったので、 Python ベースの非同期 Web サーバーである Tornado を使ってみました。 Tornado はもともと FriendFeed が開発したもので、現在は FriendFeed を買収した Fac

  • Python のクラスメソッド – デコレータ @classmethod, @staticmethod を使って

    1. メソッドをクラスメソッドにするときは、デコレータを使う あるメソッドをクラスメソッドにするとき、 Python ではデコレータを使うことができる。 2.1 組み込み関数 によると、(太字は引用者による) classmethod( function) function のクラスメソッドを返します。 クラスメソッドは、インスタンスメソッドが暗黙の第一引数としてインスタンスをとるように、第一引数としてクラスをとります。クラスメソッドを宣言するには、以下の書きならわしを使います: class C: @classmethod def f(cls, arg1, arg2, ...): ... ふーむ、ここでも第一引数が必須で、それがクラスを参照するということか。Python のこういう書き方は、最初とっつきにくいと感じた。 (+_+) デコレータの書き方としては、関数の前に @classmeth

    Python のクラスメソッド – デコレータ @classmethod, @staticmethod を使って
    gab_km
    gab_km 2012/01/07
    いつも忘れるのでメモ。
  • 1