Python

Pythonのリストにおける処理パフォーマンス

twitterのTLをふと見たら[twitter:@kk6]さんが window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https:/…

kyoto.pyハンズオン参加してきた

なんか関西圏のPython関連の勉強会にいろいろ出てたらチューターの指名を頂いたので、Pythonにおけるテスト駆動開発について話してきました。今回のハンズオンでは他に Pyramid ([twitter:@naoina]さん) PyOpenCL ([twitter:@_likr]さん) がありました。正直…

PythonのBDDフレームワークlettuceの日本語対応

Rubyの人気のBDDフレームワークであるcucumberをPythonにポーティングしたlettuceというライブラリを先日発見。 しかし振舞いを定義するfeatureファイルが日本語で書けず、これは頂けないということでlettuceのソースを眺めていたら簡単に追加そうだったので…

Pythonのクラス変数とインスタンス変数の違い

動機 Pythonの言語リファレンスとか他の人のコードみてたらクラス変数とインスタンス変数の違いがよくわからなくなったのでメモ。 というか、http://d.hatena.ne.jp/Ponsuke/20090128/1233115400にインスパイアされて書きました。 今まで 自分が最初に触った…

Pythonのis演算子と==演算子の違い

この記事を書いた動機 Pythonはなんと言っても英語っぽく書けるのが最大の利点なんだから全部isでいいんじゃね?と思って本当それで正しいのか確認しようと思った事が始まり。 実際の仕様 「初めてのPython第3版」のP200によると オブジェクトが「同等」であ…

インスタンスメソッド用デコレータを書いてみた

そう言えば関数のデコレータってそこそこ書いたことあるけどインスタンスメソッド用のデコレータって作ったことないなと思い挑戦。 通常の関数のデコレータとは微妙に違うようなのでその辺も踏まえて比較もしてみた(最後はどっちでも使えるようにしたけど。…

Flaskでテンプレートディレクトリを指定する

動機 PythonにはFlaskというRubyでいうsinatraライクなマイクロフレームワークがあり、こいつのテンプレートエンジンにはJinja2というPHPでいうSmartyライクなテンプレートエンジンが使われている。 で、Flaskでユニットテストを書いていた時に本番環境とテ…

doctestの誕生についてを翻訳してみた

動機 1ヶ月ほど前にネットを徘徊していたらTim PetersがdoctestについてコメントをGoogleGroupsに書いていたので、興味半分で読んでいたらなんとそれがdoctestのプロトタイプコードだった。Pythonの中で好きなモジュールを挙げよって言われたらおそらく真っ…

FlashBuilder4でのデータとサービスでハイフンが入ったタグ名を回避する方法

きっかけ 自宅サーバーにSubsonicというミュージックサーバーを動かしていて、こいつはAPIを使っていろいろクライアントを作れたりする。 実際にいくつかクライアントが公式ページで紹介されている。 そこでAIRを使って自分で遊んでみようと思いたって作る事…

SimpleHTTPServerのMIMEタイプ追加

今HTML5でGPSロガー作ろうと言う事でコーディング中。 んで山の中の僻地言った場合どうすんのよとかいちいちつなぐとお金掛かるし的な事を考えてOffline Web Applicationsを使おうとなり、習得の為に写経することにした。とりあえずテスト用にHTTPサーバーが…

rst2pdfの日本語周り設定

日本語でrstファイルを書いてそのままrst2pdfに突っ込むと大変残念なPDFが生成される。 ググったところフォントとスタイルシートを設定すればいいらしい。 具体的な設定は以下を参照してください。 rst2pdfをWindowsで使ってみた - 偏った言語信者の垂れ流し…

小数点の表し方とメソッド呼び出し

第2回Python-FITで dir(3)で調べると、3はrealというメソッドを持っている。しかし3.realはできない。なぜ?という質問が出た。確認してみると >>> 3.real File "<stdin>", line 1 3.real ^ SyntaxError: invalid syntax 確かにエラーだ。 その時自分も咄嗟には答え</stdin>…

Pythonでdisってみた

以前dict()とリテラルで{}と書いた時の違いにコンストラクタ的なものが呼び出されないという記憶があったような無かったような気がしたけど、いい調べ方が思いつかなかったので放置してました。 が、今日[twitter:@methane]さんがエキスパートPythonプログラ…

unittest2パッケージと2.7のunittestモジュールまとめ

以前ブログに書いたparameterized testがPython2.7で実装されるという事が気になり始めたので、おもむろにPython2.7b2のWhat's Newの章を読んでみた。 すると、unittest2というパッケージが外部ライブラリとしてあるようだ。 urllib2的なノリかと思ってみた…

noseドキュメント翻訳の問題点

nose-devのオーナーに出したメールが返ってきた。こちらが投げたメールは 今から翻訳やるよ! 既に翻訳されているか知ってたら教えてください という内容。 返信の内容は三行で書くと、 大部分のドキュメントはdocstringに書かれてるよ! 翻訳しようと思った…

noseドキュメント翻訳はじめました

Pythonのテスティングフレームワークであるnoseの翻訳を始めてみた。 第1の目的はnoseを知るより、SphinxとreSTの習得だったりする。 んでその次がnoseの習得という。問題はどこに公開するかだなあ。 まあHTMLの公開先については追々決めていこうかと。 今は…

Python-FIT第0回

Python-FIT第0回に参加してきた。 北陸の○Py好きのエロい紳士が14人集結。 ちなみに淑女の参加は見事に0でしたw 発表ネタ 主催者の@hikaruworld氏より、DDD+Sphinxの概要説明を任命され、Python TestingのChapter7を軽くまとめて発表とDDDのデモ。 あとは渋…

PythonのParameterized Test

@rch850さんが何時の日か、「PythonでParametrized Testってできんの?」ということをついったーでつぶやいていたのを見て気になったので実装してみた。 Parameterized Testの詳細はぶっちゃけわからんかったしxUnit Test Patternsのクソ厚いページから探す…

doctestにみるアーキテクトとプログラマの協調作業

最近 Python Testing Beginners Guide 読んでます。 ここのdoctestの入り方が非常に面白かったので、ちょっと紹介と考察をまとめてみようと思い書いてみる。 Python Testing Begginers Guideって何 まずこの本をさくっと。 Packt Publishingが発行してるPyth…

テスト駆動開発入門写経

ケント・ベック著のテスト駆動開発入門のMoneyオブジェクト編を写経してみた。 Javaはあまり知らないというのと個人的にPythonが好きというのでPythonを選定。 Pythonにはテストフレームワークというとnoseやらdoctestやらあるけど、他言語でも潰しがきくだ…

BeautifulSoupでCSSセレクタによるエレメント選択を行うエクステンション

動機 とりあえずいきさつから・・・社内の面倒な雑務をPythonのスクレイピング(urllibとか)の習得がてら自動化するスクリプトを書いて遊ぶ。 ↓ HTML解析マンドクセ。 ↓ でも、適当にやったら動いてしまったのでそのまま放置。 ↓ 2ヶ月後ぐらいにjQueryを触り、…

Macでのvirtualenvのインストール

昨年の年末からMacにもPython環境を整えようと思い、MacPythonはインストールしていたものの、それ以外の環境は整えてませんでした。 そんなわけでまずはvirtualenvからインストール。 これのインストールはウノウラボのsakatoku氏の記事*1やIan Lewis氏のブ…