タグ

ブックマーク / jutememo.blogspot.com (10)

  • Python の map, filter, reduce とリスト内包表記

    1. リストを操作する関数で重要なのはどれ? リスト内包表記は慣れたら使いやすい Python のリスト内包表記に出会って 4 ヶ月が経った。 「Python のリスト内包表記」を読みなおしてみると、 … 同じく数値のリストから、特定の条件に合う要素を抽出する。 print [x for x in [1,2,3,4,5] if x > 3] これまた読みにくい。 (@_@;) と書いていたけれど、今では「シンプルで読みやすく、また書きやすい」と思える。慣れとは恐ろしい。 ^^; (リスト内包表記がネストしてたりすると、すぐに理解出来ないけれど。) Ruby の Enumerable モジュールにはたくさんのメソッドが定義されている Java しか知らなかった頃、Ruby の 配列に定義されているメソッドを見て、「便利なメソッドがたくさんあるなぁ」と思った。Ruby の配列は、Enumera

    yuiseki
    yuiseki 2014/03/12
  • Tumblr で公式が用意している使い方をできるだけ利用。キーボード操作と、alt + クリックで reblog

    1. できるだけアドオンに頼らない Tumblr の仕様が変更され、ダッシュボードに必須だったアドオン Missing e が使えなくり、更新もされなくなって久しい。再び利用できるようになることを期待していたが、なかなか厳しそう。 cf. Missing e {browser extension for tumblr} また、ダッシュボードにおいて tombloo で reblog すると、なぜかエラーが出ることが多くなった。 そのため、できるだけダッシュボードでは、公式がサポートしている使い方に慣れるようにした。 2. キーボードによる操作 Tips | Tumblr > Keyboard shortcuts より、 j, k で上下にスクロール Shift + R で reblog 投稿をキューに入れるには、Shift + E。 reblog するショートカットキーより、「キューに入れ

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

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

    Python のクラスメソッド – デコレータ @classmethod, @staticmethod を使って
    yuiseki
    yuiseki 2013/03/08
  • Javascript から見る Ruby のイテレータ - Enumerable

    JavaScript のクロージャ と オブジェクト指向 」のつづき Ruby の Enumerable Ruby ではコンテナの役割を持つクラスに Enumerable モジュールをインクルードし、その要素を順にブロックに与えるメソッド each を定義することにより、要素に対する便利なメソッドがいくつか使えるようになる。 例えば、「人」は `名前' と `年齢' を属性として持ち、 「グループ」 に所属しているとする。 Ruby のイテレータ (2) - Enumerable より # 人 class Person attr_reader :name, :age def initialize(name, age) @name, @age = name, age end def to_s @name + " " + @age.to_s end end # グループ class Grou

    yuiseki
    yuiseki 2010/10/28
  • Ruby のシンボル

    1. シンボルの役割 a. シンボルは一意 Ruby で、シンボルを使うと、名前に一意性を持たせることができる。 たのしいRuby (p125) によると、 シンボルとは、Ruby が内部でメソッド名などの識別に使っている数値で、任意の文字列に対して異なった値が割り当てられます。 Emacs Lisp では、タンスの引き出しに例えられている。 cf. Symbols as Chest - Programming in Emacs Lisp b. シンボルの書き方 シンボルにはリテラルがあり、接頭辞 `:’ を名前の前につける。 プログラミング言語Ruby — ありえるえりあ のシンボル(3) には、ハッシュのキーをシンボルで書くことが勧められている。 # こうするより ht1 = { "key1" => "val1", "key2" => "val2" } # こう書く ht1 = { :

    yuiseki
    yuiseki 2010/08/25
  • Python のグローバル変数

    4.1 名前づけと束縛 (naming and binding) によると、 ある名前がブロック内で束縛されている場合、名前はそのブロックにおけるローカル変数 (local variable) です。ある名前がモジュールレベルで束縛されている場合、名前はグローバル変数 (global variable) です。 6.13 global 文 によると、 global 文は、列挙した識別子をグローバル変数として解釈するよう指定することを意味します。 global を使わずにグローバル変数に代入を行うことは不可能です (…) global 文で列挙する名前は、同じコードブロック中で、プログラムテキスト上 global 文より前に使ってはなりません。 試してみる。 hoge = 10 def test(): # ローカル変数 hoge = 1000 test() print hoge   #=>

    yuiseki
    yuiseki 2010/03/30
  • Google カレンダーで計画の見積りと実績を管理する - 狂ったリズムの修正と「リスクファクター分析」

    計画を軌道修正するためには、時間配分の見直しが必要 いかん。(+_+) 最近、暑さで脳みそやられてきた。所用で少しの期間、出かけていたのだけれど、帰ってきてから頭の中が迷走している。何をどう計画して、どういう方向へ行けばいのか見えなくなってきた。 というのも、その原因は、出かける前にしていた作業を一時的に中断してしまったために、これまでの進行状況のいくつかの部分を忘れてしまい、どのような計画が最適なのか見えずらくなってしまったため。 ^^; 必要なのはレビュー 計画を立てるためのツールと言えば、RTM と Google タスクガジェット、そして、フリーマインドを使っている。しかし、この 3 つツール、使い方を間違えると頭を整理するどころか思考が拡散していき、余計に混乱することがある。 今、必要なのは軌道の安定を計ることであり、方向性を決めること。だから、やらなくてはいけないのはレビュー。「

    Google カレンダーで計画の見積りと実績を管理する - 狂ったリズムの修正と「リスクファクター分析」
    yuiseki
    yuiseki 2009/03/25
  • すぐに忘れる脳みそのためのメモ: xmpfilter で Ruby のコードに実行結果をコメントに表示

    1. 自動注釈プログラム xmpfilter とは? Ruby で、スクリプトに注釈として、実行結果を載せたい場合、xmpfilter を使う。 xmpfilter を知ったきっかけは、Rubyの初心者にたいして「これは読むべき」だと思うコードを教えてください。.. - 人力検索はてな のコメントを読んだこと。 僕の例だとxmpfilterという超強力な自動注釈プログラムに惹かれ、内部を解析しました。 2. xmpfilter のインストールと実行 eigenclass - xmpfilter によると、 xmpfilter は rcodetools に含まれている。As of 0.4.0, xmpfilter has been included in rcodetools. eigenclass - rcodetools に従い、コマンドラインから 、rcodetools をインストール

    yuiseki
    yuiseki 2008/12/24
  • Ruby の Hpricot でスクレイピング

    1. scRUBYt! を使えない Python で、スクレイピングをするのに Beautiful Soup を使った。 スクレイピングの対象は、気象庁の過去のデータ。具体的には、 「2008 年 1 月の東京の日ごと」の気象データが掲載されているページから、特定の観測対象のデータのみを抽出したい。ただし、抽出するとき、抽出データを後で表計算に貼り付けるため、「タブ区切り」にすること。対象の項目は、「現地の気圧」と「平均気温」とする。 同じ課題に対して、Ruby を使いたい。 Scrubyt は、 スクレイピング という言葉を知ったきっかけとなった。 RubyGems で Scrubyt をインストールはできた。しかし、Scrubyt を使うと、エラーが表示されてダメだった。 cf. C 言語のコンパイラのない環境では scrubyt が使えない - A More Beautiful da

    yuiseki
    yuiseki 2008/10/26
  • Firefox で効率的に Tumblr - Google Reader の活用, 複数のテキスト選択, 全画面モード

    Firefox のアドオン tombloo tombloo 。対象を選択して、右クリック > J Google Reader で Tumblr Google Reader で気に入ったサイトの RSS を取得。 Tumblr on Google Reader を利用して、気に入った記事がアクティブな状態で Shift + R キー を押す。(要、Greasemonkey) 追記 (2009.1.24) : 一時期 Shift + R が使えなくなってしまったので、 reblog する気がなくなった。2009.1.20 にアップデートされたものをインストールしたら、また使えるようになった。これがなければ多分 Tumblr やってないだろうなぁ...。 記事の先読みが少ないと感じたら、Google Reader Prefetch More を使う。 Google Reader におけるタグの活

    Firefox で効率的に Tumblr - Google Reader の活用, 複数のテキスト選択, 全画面モード
    yuiseki
    yuiseki 2008/07/01
  • 1