2007-11-01から1ヶ月間の記事一覧

popen 諸々

プロンプトから実行したコマンドの出力を受け取る popen という仕組みがある。 動作的にはコマンドをパイプした結果を受け取っていると考えればよい。 参考 http://www.python.jp/doc/2.4/lib/module-popen2.html 何故か popen2 モジュールと os モジュール…

Template

Python の version 2.4 から Template という仕組みが追加されている(stringモジュール内)。Template とは以前からある %*1 による置き換えではなく、 辞書型(dict)のキー、もしくは辞書に類似した仕組みを要素として使った置き換えをする仕組みである。 …

文字列から文字を除去

rstrip rstrip は文字列右から指定文字を除去するメソッド。 string.rstrip( [ chars ] ) italic;">chars:除去したい文字の集合。文字列型で指定すること。 引数を指定しない場合は \t \n \r \v*1 \f*2 が除去する文字として扱われる。 サンプルコード 以下…

簡単にモジュールの有無をチェック

c オプションを使って簡単なプログラムを走らせることができる。 それの転用 モジュールが存在する時 $ python -c "import sys" $ 何もメッセージが出なければ問題なし。 逆にメッセージが出るようだとモジュールはインストールされてません。 さっさと Chee…

標準入出力の文字コードを変える

標準出力をファイルにリダイレクトする際に ファイルの文字エンコードを Shift_JIS に設定するのに今までは以下の様に行っていた。 $ python script | nkf > output_file しかし、これだと自分は良いのだが余りCUIに慣れていない人に 余計な操作をさせること…

コマンドラインオプションの処理をする : getopt

getopt はコマンドラインオプションのパーザのモジュールである。 参照 http://www.python.jp/doc/2.4/lib/module-getopt.html 記述の方法 o, a = getopt( args, options [, long_options ] ) 引数 引数 説明 args コマンドライン引数。通常 sys.arg[ 1: ] …

演算子について

他言語との違い*1に色々と気付いたのでメモ インクリメント演算子・デクリメント演算子 Python ではインクリメント演算子、及びデクリメント演算子はない模様( 参考 : http://d.hatena.ne.jp/shrkw/20061025/1161885038 )。 何の躊躇も無く記述して、あっさ…

正規表現を使う

VBScript の正規表現モジュールを使うと良いらしい。 参照 http://officetanaka.net/excel/vba/tips/tips38.htm 呼び出し方 Dim re As Object Set re = CreateObject("VBScript.RegExp") プロパティ 名前 説明 Default値 Property 正規表現で使用するパター…

タイマー

参考 http://www.geocities.jp/happy_ngi/YNxv214.html#8-1 Sub TimerTest() ' 5秒待機 Application.Wait( Now + TimeSerial( 0, 0, 5 ) ) MsgBox( "5秒待ちました") ' 1分待機 Application.Wait( Now + TimeValue("00:01:00") ) MsgBox( "1分も待ちました" …

キーでイベントを起こす

user32.lib の GetAsyncKeyState を使用する。 参考 http://www.happy2-island.com/excelsmile/smile04/capter00301.shtml GetAsyncKeyState(MSDN) http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpwinui/html/_win32_getasynckeystate…

オブジェクトのリストを参照 : dir()

オブジェクトのリストを参照するのには dir を使用する。 dir( obj ) もし、グローバルスコープのオブジェクトリストを参照したければ引数無しで dir を使用する。 dir()

インスタンスにメソッドを追加

new モジュールを使用すると良いらしい。 以下、サンプル #!/usr/bin/env python # coding : utf-8 import new; class Sample: pass def sample_method( self ): print "I am Test class member." var1 = Sample(); var2 = Sample(); # インスタンスが持つオ…

リスト -> タプル / タプル -> リスト

リストをタプルにする tuple( list ) タプルをリストにする list( tuple ) サンプルプログラム >> l = range( 10 ); >> l [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] >> t = tuple( l ); >> t (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10) >> list( t ); [0, 1, 2, 3, 4, 5…