銀月の符号

Python 使い見習いの日記・雑記

2008-01-01から1年間の記事一覧

pickle できない属性をもつクラスへの対策例

urllib2.OpenerDirector オブジェクトを属性に持ったクラスオブジェクトを pickle 化しようとしたがエラーがでて足踏みさせられたのでメモ。ほぼライブラリリファレンスのままなのだけれど。まず、 __getstate__ メソッドを定義する。これは pickle 化する際…

Python Code Reading 03 後

StringIO が予想以上におもしろかった一日。その後の懇親会もすごく楽しくていろいろ書きたいことあったはずなんだけど、 04 で発表側に回ることになって全部吹き飛んだ。お、お、お、おちつけオレ!?とりあえず題材になりそうなモジュールを探そう。柴田さ…

tarfile と Shift-JIS ダメ文字2

Python 2.5.2 の tarfile モジュールと Windows の組み合わせでは Shift-JIS のダメ文字問題が発生する件について。 Python 2.6a3 の tarfile モジュール(リビジョン 61867) なら処理できる模様。すくなくとも「サシスセソ.txt」をアーカイブに格納しようと…

ffmpeg コマンドをつかって flv から音を取り出す

[ffmepg -i flvファイル名 -acodec copy 出力ファイル名] と何度も打つのが手間だったのでスクリプトをちょっと書いてみた。そんな日のこと。flv 動画ファイルから音声をそのまま取り出してくれるスクリプトのつもり。引数を与えないで起動するとカレントデ…

サイクリング

ちょっと軽めの片道1時間ほど、の予定だったのだが自転車のチェーン外れたりがんばって直そうとしたらギアに指ぶつけて軽い切り傷負ったり。

バイナリエディタを使うべきところで

バイナリエディタを使うべきところで指が自然と python, import struct, open(), unpack, seek, unpack, seek, while ・・・・・・, def むにゃむにゃし始めた。いい傾向。

d.y.d

今でも愛用してます Noah ですが、サイト kMonos.NETを久しぶりに見に行ったら作者、k.inaba さんと年代が一緒であることにいまさら気づいた! しかし同等なのは年齢だけで 2008/6/3 の意味論の話とかこんなにできない、すごい…。だまって d.y.d. を読む。こ…

tarfile と Shift-JIS ダメ文字

今週の日曜プログラミング、なににしようかな、と。かつての定番? アーカイブツール、圧縮解凍ツールの類にしよっと。 Python にて作るとどうなるのか試し始めた。 GUI 部分は最近使えるようになってきた wxPython にて Noah のような感じをイメージしつつ…

バイナリデータの読み込みのお供に struct モジュール

職場にてあるバイナリデータの中身を調べる際、身につけた&役に立ったのでメモ。例としてブログに上げるわけにはいかないから・・・とりあえず Python 2.5.2 の README.txt のみを収めた LZH 形式のアーカイブファイルのヘッダの始まり4要素分を例に。http…

ブロックス(デュオ)するアプリ

2007 年夏、 GPCC にてブロックスデュオの対戦プログラムの募集をしているのを見て、おれもブロックス(デュオ)するプログラムを書いてみたいなーと前から思ってはいたけれど、「やってみたい」から「やってやる」に意識が変わったのが今日。今頃発症した。…

PytnonRecipe 久々に新規追加

173:ビット演算を行う と 174:2進、8進、10進、16進の各表現を相互に変換 の2つを追加。

pygame が 1.8 になってた

2008/3/29 のこと。pygame 1.8.0 リリース。気づくの遅すぎたかも。

技術だけじゃなくビジネス感覚も磨こう

技術者が技術よりビジネス感覚の方を求められるってのも困ったもんだけど。この辺の分業は…できないんだろうなぁとあきらめモード。「会社勤めの技術者=ビジネスマン」。悔しいけれどこれ真実なのよね。で、人が何らかの活動をする際にはお金がかかるわけで…

グラボ故障?

ときおりブルースクリーンになったり。もうすこし調べた後、買い替えの予定。

ひとつのことに夢中になると他に気が回らなくなる

これって短所だったり長所でもあったり。でも今回は悪いほうに作用した模様。タイトルに反して今回浮気していたものは2つあるけど。1つ目は『Code Reading』 、 『Code Craft』 などの積読の消化。そんでもって残ったわずかな気力を2つめ、子供のころやっ…

PyYAML

YAML というものを昨日知ったばかりの自分がいる。るびま などを読んで知識たくわえ中。これは XML やデータベースを持ち出すまでも無い数件から数百件のデータの記述に使うと便利そう。 Wikipedia の例を PyYAML で解析すると次のように。 >>> import yaml …

Python Code Reading 00

Python Code Reading 00 参加しようとして大遅刻しましたorz すごくもったいない。1時間40分遅れで到着。自己紹介は cvs2svn との出会いが Python との出会い、まで話した。その後 Windows 上でも使えることに気づく、 Windows 上で DOS スクリプトの使い…

明日の PythonRecipe

レシピ参戦初期に書いた、 145:ディレクトリ内のファイルを再帰的に処理 を書き直したいかな。説明がムダに長いうえになんかえらそうという駄文。どう直したらよくなるかなぁ?

複素数平面の極座標

PythonRecipe 185:直行座標を極座標に変換する を書いていて思ったこと。Ruby の複素数からは Complex#abs で絶対値、Complex#arg で偏角、 Complex#polar で両方を得ることができることを知った。 irb(main):001:0> require 'complex' => true irb(main):00…

一週間空き

ブログ一週間放置してしまった。ブログの継続と実生活の充実が両立しない…。ブログ暦1月のオレにはペースの配分が難しいようで。おかげで仕事は順調、部屋片付け完了、サイクリングによるダイエット継続その他いろいろできたけど。

今週の PythonRecipe は?

050:文字列をバイトごとに処理する、072:文字列が複数の正規表現のすべてにマッチするか調べる、138:ファイルが読み書き可能か調べる、019:適切な文字列リテラルを選ぶの4件でした。 追記 23:07 寝る前に2件追加できました。167:ファイルの先頭のn行を削除…

文字列ネタをちまちま処理する日曜日

PythonRecipe 投稿。044:特定の文字を含む部分の長さを調べる と 071:正規表現のメタ文字をエスケープする 。寝て起きたら 14 時でいろいろとがっかりだった日曜日。 12 時間もダウンするってどういうことだオレ? 休日にもかかわらず投稿したレシピ2つの内…

optparse モジュールことはじめ

PythonRecipe 投稿。optparse モジュールをこれから使ってみようと思い立った人向けとして、207:コマンドラインオプションを解析する をアップしました。 ついでに 206:コマンドラインオプションを得る もアップ。案の定、力尽きました。 OpenOffice calc + …

文章の要約

PythonRecipe に optparse モジュールのことを上げようと文章を練っていたら、まだ途中なのにプレーンテキストで 16KB 越え。 450行超。このままいくとリファレンスマニュアルの劣化コピーになりかねない。必要なことは読者層を意識すること。 Python に夢中…

アウトプット

自戒の意として。去年の仕事場での自分、天狗になっていたところがあったなぁと。そりゃぁ、客観的に見てもオレがコンピューターぶん回す力は今いる職場の人間より高い。けれど、その職場のレベルとやらが foobar 問題すら解けなくて試験表にマルバツつけて…

常山日記の巡回、しかも太字

巡回 - 常山日記 。あわわ…。半月前までネットの文章は読むだけ読んでるくせに書くことを一切してなかったオレなんぞが載ってる。ありがとうございます。3ヶ月は無反応を覚悟ではじめてたのですが、予想外の巡回。これはやる気出ます。

アウトプット 追記 2008/3/22

今日マネージャーと話す機会ができて、誤解がとけた。スクリプト言語の件を取り消す。その言語での案件があるかどうかという点に絞っての話だった。たしかにお金にならない以上、彼にとって存在しないと同義、大目に見ても趣味の域を出ない。でも同意もしな…

Python-Uno で OpenOffice calc 操作 - 6時間目

API リファレンスの直読みだと抽象的すぎて、 Basic の例だと具体的すぎる。Java の例も調べるべきかこれは…。ただいま ウィリアムのいたずらの開発日記 などを読んでいます。あとは、 str や repr 関数に各種オブジェクトをわたすと、そのオブジェクトがど…

Python-Uno 5時間目

資料不足。API リファレンス がみつかったので「急がば回れ」の精神でいくか。しかし、これはしんどい。昨日 OpenOffice.org Scripting with Pythonを参考に書いたコードの一部。calc のシート取得。この裏でなにが起こっているのか API リファレンスとあわ…

Python-Uno で OpenOffice calc 操作 - 7時間目

すこしずつ OOoBasic マクロを Python に翻訳するコツがわかってきた。ほとんどそのままだけど直さなきゃいけないところはやっぱりあって、 StarDesktop は XSCRIPTCONTEXT.getDesktop() だったり Array はタプルだったり、 struct は uno.createUnoStruct("…