Python
を勝手に翻訳したものです。 APIの差異 importする名前の違い(PyQt4の代わりにPySide) PySideはライブラリ名がPyQtと違います。 from PyQt4.QtCore import * や、 import PyQt4.QtCore と書く代わりに、次のように書いてください。 from PySide.QtCore imp…
これは『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)をPythonに翻訳してみようというシリーズです。Rubyによるデザインパターン作者: Russ Olsen,ラス・オルセン,小林健一,菅野裕,吉野雅人,山岸夢人,小島努出版社/メー…
Using Qt Properties in PySideを翻訳。PySide は Property 関数を提供しており、 Pythonで書かれたgetter・setter関数を使って、 QtのプロパティとしてもPythonのプロパティとしてもふるまうようなプロパティを、 定義することが出来ます。以下は、Qtのプロ…
pythonのitertools.combinationsやitertools.permutationには無限長のイテレータを渡す事はできません。内部でイテレータをタプルに変換しようとするのでフリーズしてしまいます。無限長にも対応する、アルゴリズム自体は難しくはありません。そこで、python…
http://d.hatena.ne.jp/yagiey/20100705/1278340237 http://d.hatena.ne.jp/youkoso_guest/20081212/1229089595 に、直積を作る関数について書かれていたのですが、どちらも有限なlistに限定したものだったので、無限リストにも扱える関数を書いてみました。…
3つ以上の集合の直積を求めるプログラムをClojureで書いてみました。Python版では無限リストを扱う関係の部分でゴチャゴチャしていたのが、Clojureは無限リストを自然に扱えます。一方Clojureは状態変化が基本的に無いので、Python版は直訳は出来ません。clo…
Python2.7が正式リリースされた記念に、パッケージのインストールをメモ。 自分が使うものだけをインストールするので、一般性は乏しいです。 Python2.7本体 http://www.python.org/download/releases/2.7/から、windowsの人はinstallerを、その他の環境の人…
Clojureの練習として、treeコマンドを作って・・・みようとしたのですが、 最初いきなりClojureで作ろうとして混乱してしまいました。 そこで、まず自分が使いなれたPythonでtreeを作ってみました。 実行例: $> python tree.py hello-clojure P:\\hello-clo…
itertoolsには、Trueになる要素を返すifilterと、Falseになる要素を返すifilterfalseがありますが、ifilterとifilterfalseの両方を返す関数があったら便利じゃないか? (schemeやclojureなどにはあるようです)あるいは、True/Falseだけでなく、任意の値で…
Python初心者の友人がバッチファイルの真似事をしようとして、Pythonで外部プログラムの呼び出しかたが分からず悩んでいました。自分自身も初心者のころつまった経験があるので、メモしておきます。 外部プログラムを扱う方法はたくさんある os (system, spa…
cProfileとpstats(ボトルネックの調査) 「実行経過のデータをファイルに出力 → データを読める形に出力」という手順で測定します。 実行経過のデータをファイルに出力するには、cProfileを使います。 #encoding:shift-jis # import profile # pure Python…
世間では、単に好きな曲のメドレーを作業用BGMと呼ぶらしいですが、私は曲の境目で集中力がそがれるタイプなので、1つの曲を1時間延々とループさせるwavを作ることにします。wavで出力するので、容量はバカでかくなります。 1. RadioLine Freeというソフト…
setup( options = {'py2exe': py2exe_options}, console = [dict( script = 'dw2.py', other_resources = [], icon_resources = [(0, "dw.ico")], #ここにアイコンを指定 )], data_files = [], zipfile = None )
スクリプトのアイコンにファイルを大量にドラッグ&ドロップしようとすると、 エラーが出るので、ウィンドウを作ってそこにD&D;させるスクリプトを書いてみました。 #encoding:shift-jis from __future__ import division, with_statement, print_function i…
『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次 Convention over Configuration パターン (1) Convention over Configuration パターン (2) "Convention over Configuration(Co…
『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次 Convention over Configuration パターン (1) Convention over Configuration パターン (2) CoCで重要なのは、まず規約を良く練…
『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次 メタプログラミングパターン (1) 特異メソッド メタプログラミングパターン (2) メソッドの自動定義 メタプログラミングは動的…
『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次 メタプログラミングパターン (1) 特異メソッド メタプログラミングパターン (2) メソッドの自動定義 メソッドを自動的に定義す…
『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次 内部DSLパターン (1) 内部DSLパターン (2) ブロック 今回は、内部DSL(ドメイン特化言語)パターンです。 前回のInterpreterパ…
『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次 内部DSLパターン (1) 内部DSLパターン (2) ブロック Rubyが内部DSLに向いている一つの理由は、ブロック構文の存在です。 Python…
『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次 Interpreterパターン (1) Interpreterパターン (2) ファイル検索用言語 Interpreterパターン (3) ASTを手に入れる 周知の通り、…
『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次 Interpreterパターン (1) Interpreterパターン (2) ファイル検索用言語 Interpreterパターン (3) ASTを手に入れる Interpreter…
『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次 Interpreterパターン (1) Interpreterパターン (2) ファイル検索用言語 Interpreterパターン (3) ASTを手に入れる Interpreter…
『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次 Builderパターン(1) Builderパターン(2) ポリモーフィックなBuilder Builderパターン(3) Builderでオブジェクトの妥当性を保証…
『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次 Builderパターン(1) Builderパターン(2) ポリモーフィックなBuilder Builderパターン(3) Builderでオブジェクトの妥当性を保証…
『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次 Builderパターン(1) Builderパターン(2) ポリモーフィックなBuilder Builderパターン(3) Builderでオブジェクトの妥当性を保証…
『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次 Builderパターン(1) Builderパターン(2) ポリモーフィックなBuilder Builderパターン(3) Builderでオブジェクトの妥当性を保証…
『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次前項でBuilderパターンについて書きましたが、 ComputerBuilderを作っても、まだ、 builder.set_turbo() builder.add_dvd() buil…
『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次 Factoryパターン(1) - Factory Method Factoryパターン(2) - 引数にクラスを渡すFactory Method Factoryパターン(3) - Abstract…
『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)の例をPythonに変換して書いています。目次 Factoryパターン(1) - Factory Method Factoryパターン(2) - 引数にクラスを渡すFactory Method Factoryパターン(3) - Abstract…