2010-01-01から1年間の記事一覧
Windows版ポモドーロ・テクニック用のタイマー アプリケーション PomoTimer 0.0.2 をリリースした。 ダウンロード pomotimer-0.0.2.zip ソース https://code.launchpad.net/~aishimoto/+junk/pomotimer ライセンス GPL 変更履歴 タイマーで.wavファイルを指…
Windows版ポモドーロ・テクニック用のタイマー アプリケーション PomoTimer 0.0.1 をリリースした。作ってしまったので仕方がないが、このように数時間でできる程度の、素朴なアプリケーションを公開してしまうのは正直恥ずかしいものである。 ダウンロード …
Python関連のブログやTwitterでの発言を見ていると、ときどき obj() は obj.__call__() のシンタックスシュガー とか、 len(obj) は、 obj.__len__() と同じ というような発言を見かけるとこがある。本当だろうか? obj() は obj.__call__() のシンタックス…
プログラム言語 Python はまもなくリリース以来20年を迎え、現在では世界でもっともよく使われている言語の一つへと成長しました。Python はすばらしいプログラム言語ですが、プログラム言語が広く普及するためには、単に優れた言語であるというだけでは不十…
ふと思いついたので書いておく。Pythonでデータ定義行のファイル名と行番号を手に入れる - 清水川Web では、Pythonでデータの定義位置を記録する方法として、データ生成用の関数を作ってその中でデータの定義位置を記録する方式が提案されている。このように…
世の中はやれ github が便利だの Bitbucket が買収だのとかまびすしい中、Bazaarユーザである私は粛々と Launchpad を使っている。使ってはいるのだが、Launchpadは遅い。何をするにもやたらと待たされる。サーバが重いのもあるだろうが、確かCanonicalの本…
【Q】 Pythonの拡張モジュール作成言語として、Pyrex と Cython のどちらを使うべきでしょうか? 【A】 できるだけCythonを使いましょうPyrex は Greg Ewing氏による Pythonの拡張モジュール作成言語であり、CythonはPyrexをベースにStefan Behnel氏らを中心…
mintty上でVimを動かすと、どうもカーソルキーを押したときに余計な文字が入力されてしまう。 私の環境では(Cygwin 1.7.7/mintty 0.9.2)、.vimrcに以下の指定をすると問題ないようだ。 set t_ku=^[OA set t_kd=^[OB set t_kl=^[OD set t_kr=^[OC^[0A 等の ^[…
Cython 演習問題 演習1 素数判定 整数の簡単な演算を中心とした処理だが、このような処理を拡張モジュール化する場合の効果を確認してみよう。まず、演習1-(A)のスクリプトをそのままCythonを使用して拡張モジュール化した場合では、 # Python版 $python -…
演習1 - 素数判定 (A) 以下のPythonスクリプトを作成し、 primes(1000) の実行に必要な処理時間を測定せよ。 def primes(kmax): p = [0] * kmax result = [] k = 0 n = 2 while k < kmax: i = 0 while i < k and n % p[i] <> 0: i = i + 1 if i == k: p[k] =…
普通にインストール # yum install loggerhead動かしてみる $ serve-branches path-to-repoなにやら不満げなログが出てきた DEBUG:loggerhead.infopile:Couldn't load python-sqlite, continuing without using a cache INFO:paste.httpserver.ThreadPool:Ca…
パソコンを使う人なら誰でも"ファイル名"というのを知ってるし、プログラマなら誰でもファイル名を使ったファイル操作は基礎として学んでいる。しかし、21世紀の今日ですら、時としてファイル名とはやっかいな問題となりうるのだ。Python3では、文字列オブジ…
やっとPythonのクロージャの仕組みを少しは理解した件 で、清水川先生がクロージャを返すとき実行中のフレームオブジェクトが保存されるのか?という疑問を呈されている。結論から言うと、フレームオブジェクトは保存されず、クロージャが必要とするオブジェ…
文字列定数 'Dead Parrot' '''Dead Parrot''' r'''Dead Parrot''' "Dead Parrot" """Dead Parrot""" r"""Dead Parrot""" "Dead" " " "Parrot" "Dead \ Parrot" "Dead" \ " " \ "Parrot" "\x44\x65\x61\x64\x20\x50\x61\x72\x72\x6f\x74" "\104\145\141\144\4…
The Zen of Python 解題 - 前編 "The Zen of Python" の役割 "The Zen of Python" は Tim Peters氏が1999年に「Pythonらしさとはなにか?」と問われて書き上げたものであることは前述した。Python 2.0 のリリースに向けて活発に開発が進められていたころであ…
The Zen of Python, by Tim Peters Beautiful is better than ugly. Explicit is better than implicit. Simple is better than complex. Complex is better than complicated. Flat is better than nested. Sparse is better than dense. Readability count…
日本語エンコーディング変換ライブラリ pykf も開発以来10年を超え、さすがにいろいろと古くなってきた。ぼちぼち大幅に手を入れようかと検討してみると、どうも原型がなくなるぐらい修正が入りそうな気配。それでは、ということで pykf はそのままにして、…
0と1を次々返す方法 - a2c.get.diaryこれってもう出た? class Toggle(object): @property def value(self): ret = self._f self._f = not self._f return ret def __init__(self): self._f = True toggle = Toggle() print toggle.value print toggle.value…
http://d.hatena.ne.jp/atsuoishimoto/20100807/1281169026 を書いたあとに、スタティックメソッドの使い道を思いついた。やや人工的なシチュエーションではあるが…こんなコードを考えてみよう def _callexit(): sys.exit() class Foo(object): shutdown = _…
Pythonでは、クラス内で定義することの出来るメソッドが三種類用意されている。メソッド・クラスメソッド・スタティックメソッドの3種類だ。それぞれどんな特徴を持っているのだろうか? メソッド まず、メソッドはおなじみのインスタンスメソッドで、第一引…
String representation in py3kView more presentations from atsuoishimoto.
先日 Python拡張モジュール開発言語 Pyrex の 0.9.9がリリースされたが、このバージョンでは旧バージョンとは非互換となる変更が加えられており、注意が必要である。 例外処理の変更 Pyrex 0.9.9では、発生した例外が実行中のスレッドに保存されなくなり、sy…
前回 の続き イヤホンジャックが邪魔 Desireの電源スイッチとイヤホンジャックは上部に並んで配置されているが、これが良くない。イヤホンを付けたまま操作しようとすると、ケーブルが指にからんだり画面のすぐ上でぶらぶらしたりと邪魔にな場合がある。イヤ…
Softbank の Android 携帯 HTC Desireを入手して二日経った。現状での感想を残しておきたいと思う。 もたつかない とにかく操作をしてから待たされるということがない。アプリケーションは一瞬で起動するし、キーを押せば即座に応答する。もちろん、Webブラ…
Python用日本語エンコーディング変換モジュール pykf の setuptools 対応を行い、PyPI にアップロードした。これからは easy_install pykfで利用可能なので、機会があればご利用ください。
Python で次の月を求めようとしたらメンドそうなので Ruby にした Pythonで私が常用するイディオムだと import datetime start = datetime.date(2005, 1, 1) while True: text = start.strftime('%Y%m') print text start = (start+datetime.timedelta(days=…
今、私の心は千々に乱れている。Android携帯を買いたい。買う必要は全く必要はない。しかし、買いたくなってしまったのだ。昔はこの手のガジェットが好きで、HP 200LXだのPalmだのiPaqだのを次々と購入していたが、ここ数年は仕事上での外出が減り、必要性が…
昨日登録したばかりのパッチが、今日もう採用されていた。すでにトランク に反映されているので、是非お試しください。
Apache PDFBox日本語対応パッチを PDFBox本家のJIRAに登録しました。 Extracting CJK text Default character width should be used if width of a character is not defined 上記のページに皆様からの支持を書き込んで頂くと、本家に取り込まれる可能性が高…
先日作成したApache PDFBox日本語対応パッチを、PDFBox 1.0.0用に更新した。パッチ済みのソースはこちら。 bzr branch lp:~aishimoto/+junk/pdfbox-1.0.0-jaでBazaarブランチを取得できる。また、このブランチには、id:buzztaiki さんが作成された、日本語PD…