タグ

関連タグで絞り込む (284)

タグの絞り込みを解除

Pythonとpythonに関するsyanbiのブックマーク (475)

  • mockはこう使え - atsuoishimoto's diary

    最近、Mockライブラリ http://www.voidspace.org.uk/python/mock/ を使ってみたのでメモ。 このライブラリは、その性質上、動的にメソッドや属性を作成するケースが多く、普通のPythonライブラリのようにイントロスペクションに頼って使い方を調べるのは難しい。気で使うならまじめにドキュメントを読み込む必要がある。 関数の置き換え テスト中に呼び出される関数をMockで置き換える例。ここでは、関数 myapp.utils.func1() を置き換える。 from mock import Mock import myapp.utils # myapp.utils.func1 を、常に100を返す関数に置き換える myapp.utils.func1 = Mock(return_value=100) 戻り値が定数でない場合は、Mock()にside_effec

    mockはこう使え - atsuoishimoto's diary
    syanbi
    syanbi 2012/03/13
    python mockモジュールの使い方に関するエントリ。
  • __del__, gc, 循環参照, weakref

    2010年11月22日公開 Python の __del__ メソッド、ガベージコレクタ、循環参照、そして弱参照についての解説と考察。 参照カウンタ __del__ __del__ の落とし穴 循環参照 __del__ の落とし穴 考察 __del__ を使わない 循環参照を確実に避けることはできる? 弱参照 weakref モジュールを利用したハック いったいいつ __del__ を使うのか 参考文献 事項 参照カウンタ C/C++ では、malloc を使って確保したメモリや new で作成したオブジェクトについては、必ず対応する free / delete を呼ばなければならない。これを忘れるといつまでも解放されないメモリがプログラムの生存期間中居残ることになる。これをメモリリークと呼ぶ。メモリリークがあると、確保されたままになったメモリが OS や他のプロセスを圧迫して、システム全

    syanbi
    syanbi 2012/03/11
    弱参照に関する実装なんだっけ(python)って思って検索したら出てきたのでブクマ。__del__ 利用時の循環参照オブジェクトはメモリ開放しないという罠とか今把握してないのが掲載されてっぞ・・・
  • Fabric デプロイツールのPythonicな書き方 - Ian Lewis

    Fabricは指定したコマンドを各ホストで実行する実行モデルです。この場合は特にホストの指定がなかったので、全部ローカルで、一回実行することになります。 これは結構つまんないので、当の例を見ましょう。これは最近、仕事で作ったコマンドです。Nginxサーバーでメンテ画面を出すようなコマンドです。各ロードバランサーで実行します。 from fabric.api import run, cd, abort, require, sudo, env from fabric.decorators import runs_once, roles from fabric.contrib.console import confirm ... @roles('loadbalancers') def start_maintenance(): """ メンテナンス画面に切り替える """ _production

    syanbi
    syanbi 2012/03/09
    Fabricか。知らなかった。使ってみるか。
  • Facebook上で有志がPythonのグループを立ち上げ

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    Facebook上で有志がPythonのグループを立ち上げ
  • Python Release Python 3.3.0

    Release Date: Sept. 29, 2012 Python 3.3 includes a range of improvements of the 3.x series, as well as easier porting between 2.x and 3.x. Major new features in the 3.3 release series are: PEP 380, syntax for delegating to a subgenerator (yield from) PEP 393, flexible string representation (doing away with the distinction between "wide" and "narrow" Unicode builds) A C implementation of the "decim

    Python Release Python 3.3.0
    syanbi
    syanbi 2012/03/06
    Python 3.3.0 alpha 1がリリース。 yield from構文やxz向けモジュールが入ったりしてるのか。
  • sshモジュールで別端末を操作 - YAMAGUCHI::weblog

    はじめに こんにちは、Python界の情弱です。最近はみなさんPythonWebサービスをゴリゴリと作っちゃっててとてもかっこいいなーと思いつつ、コソコソとツールを作る毎日を過ごしています。同じような構成のマシンがたくさんあったときに、いちいちSSHログインして作業するの面倒だなーとか思ってて、かといって、自分でsocket通信のプログラム書くのはきついのでライブラリ使うことにしました。 Paramikoに関する記事ばかり出てくるんですが、id:mopemope はじめsshモジュールがいいよ、っていう情報をもらってしばらく遊んでみたらこれが便利だったので、忘れないうちにまとめときます。 参照 ssh 1.7.11 : Python Package Index Readmeに書いてあるけれどもsshはParamikoのpure-python実装です。 bitprophet/ssh · G

    sshモジュールで別端末を操作 - YAMAGUCHI::weblog
    syanbi
    syanbi 2012/02/14
    pythonのsshライブラリを利用する場合に調度良いcode snipet。助かりました。
  • 他の言語に慣れた人がPythonを使ったときにつまずきがちな10のポイント - 西尾泰和のはてなダイアリー

    今日質問されて、以前Twitterで書いたのを思い出して、そして検索性が悪くて見つけ出すのに苦労した。こちらに転載しておく。詳細は気が向いたときに埋める。 オプション引数の評価タイミング Rubyではオプション引数は関数が呼ばれるたびに評価される。 def foo() print "foo!" end def bar(x=foo()) end bar #=> foo! と出力される bar #=> foo! bar #=> foo! Pythonでは関数の定義時に1回だけ評価される。 def foo(): print "foo!" def bar(x=foo()): pass #=> foo!と出力される bar() #=> 何も出力されない bar() 「引数が省略されたら今の日時」みたいな毎回評価したい場合はデフォルト値をNoneにしておいて「Noneだったら=省略されていたら」のif

    他の言語に慣れた人がPythonを使ったときにつまずきがちな10のポイント - 西尾泰和のはてなダイアリー
    syanbi
    syanbi 2012/01/25
    Pythonはリストは参照とかそこらへん、他言語ユーザからしたら引っかかりやすいところある
  • GitHub - markchadwick/paycheck: A Python QuickCheck implementation

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - markchadwick/paycheck: A Python QuickCheck implementation
    syanbi
    syanbi 2012/01/19
    Haskell の QuickCheck を Pythonに portingしたもの
  • 菊地時夫先生への、GNU Mailmanコミュニティからのメッセージ - atsuoishimoto's diary

    すでにご存じの方も多いと思いますが、PythonやApache、Mailmanなど、様々なオープンソースコミュニティで活躍なさっていた、元高知大の菊地時夫 名誉教授が、平成24年1月14日にお亡くなりになりました。 菊地先生はGNU Mailmanという、メーリングリストを運営するソフトウエアの国際化・日語対応で大変大きな活躍をなさっておりました。GNU Mailmanはこの種のソフトウエアではおそらく最大のシェアを占めており、日語でメールを利用されている方ならば、知らないうちに菊地先生の貢献の恩恵を受けている可能性は非常に高いのではないかと思います。 今回、菊地先生の訃報にあたり、GNU Mailmanの開発者から弔辞が寄せられました。 http://wiki.list.org/display/COM/TokioKikuchi 以下に、このページの拙訳を掲載します。 去る2012年1

    菊地時夫先生への、GNU Mailmanコミュニティからのメッセージ - atsuoishimoto's diary
    syanbi
    syanbi 2012/01/18
    ご冥福をお祈りいたします。
  • Pythonクラスのメソッド名解決順序 - 西尾泰和のはてなダイアリー

    昨日のプロシンで「枝分かれのあるプロトタイプチェーンがあるときにメソッド名の解決はどうなるのか」「PythonではC3直列化でシリアライズして端から探索していく」という話をしたのですけど、PythonのC3直列化が入ったクラスが親クラスを書き換え可能かどうか自信がなかったのでその場では断言出来なかったので、確認して見ました。 Pythonのクラスは親クラスを単なるポインタとして持っていて、定義後に親クラスを変更できるので、プロトタイプチェーンと言って構わないかと思います。で、それでダイヤモンド継承を作ってみます。クラスAをBとCが継承した上で、DがBとCをこの順で継承します。__mro__という属性にMethod Resolution Orderが保存されているのがわかります。 >>> class A(object): pass >>> class B(A): pass >>> class

    Pythonクラスのメソッド名解決順序 - 西尾泰和のはてなダイアリー
    syanbi
    syanbi 2012/01/07
    pythonのclass継承におけるMROでのメソッド解決順序について
  • 遺伝子をモチーフにした言語「Genomy」を作りました - 西尾泰和のはてなダイアリー

    最近、3年くらい前に書いた「そろそろ例のプロジェクトについて言及するか」についてTwitterで言及があったので思い出しました。「条件を満たしたものをすべて呼び出す」という設計思想でプログラムが書けてしまうという点について意外とみんなピンと来ないみたいだからコンセプトプルーフを実装してみようと思っていたんでした。 という訳で作りました。https://github.com/nishio/genomy 解説 「遺伝子はタンパク質の設計図」というところまでは教科書などでもよく言及されます。でも、その設計図には「どういう状況になったら作るべきか」「どういう状況では作るべきではないか」という情報も書かれています。 この「作るべきではない」(発現の抑制)がどう実現されているか、ザックリ説明しましょう。体の中にあるタンパク質があると、これがある遺伝子の周辺にへばりつき、その遺伝子からタンパク質を作る過

    遺伝子をモチーフにした言語「Genomy」を作りました - 西尾泰和のはてなダイアリー
    syanbi
    syanbi 2011/12/27
    タンパク質の発生条件、成長条件を元にしてXOR回路作成か・・・
  • Pythocat - GitHub Octodex

    syanbi
    syanbi 2011/12/10
    かわいい
  • python-distribute.org - python distribute リソースおよび情報

    This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

    syanbi
    syanbi 2011/11/26
    おお、pythonパッケージ作成ガイド、が新しいドキュメント作成プロダクトとして上がったのか。これはいいな!
  • tcha.org

    About Slides Rusty CPython Iterator - rust.tokyo 2019 LT 翻訳 Kiln が Git (や他の SCM)ではなく Mercurial をサポートする理由 Mercurial クイックリファレンス・カード 分散バージョン管理入門 (イラスト入り)

  • Take a screenshot via a Python script on Linux

    I want to take a screenshot via a python script and unobtrusively save it. I'm only interested in the Linux solution, and should support any X based environment.

    Take a screenshot via a Python script on Linux
    syanbi
    syanbi 2011/11/12
    スクショ取るためのcode snippets
  • PyPyの論文つぶやき

    Ryotaro Ikeda @chlere 今回はlanguage-specificな特徴量をいかにしてMeta-Tracingで扱うかについて述べられています (via : http://t.co/miqpeba ) #pypy 2011-08-15 11:26:20 Ryotaro Ikeda @chlere Pythonで簡単にVMを作りたい!->RPythonで作れるPyPyというFWを作りました!->JITは言語の実装に寄らないようにRPythonそのものを対象にしちゃうよ!->あれ、データモデルの部分にもJITが入り込むからすげー早くなっちゃった (いまここ) #pypy 2011-08-15 15:59:05

    PyPyの論文つぶやき
  • 言語のJITコンパイラをその言語自身で作る事の意義とは

    くまぎ @kumagi PythonのJITコンパイラを実装するだけなら実装に用いる言語はPythonである必要は無いわけだけれど、Rubiniusといいその言語の処理系をその言語自身で作ることの意義って具体的に何があるんですか?実行の為にCPythonやCRubyを別に必要とすると考えると欠点しか…? 2011-11-02 13:28:05 ぽんこつ @ponkotuy pypyはPythonの実行環境をPythonで作ってる。ある言語の実行環境をその言語そのもので実装することは意義がある、って言ってたな、pypyでは [Mimas] 2011-11-02 13:30:28

    言語のJITコンパイラをその言語自身で作る事の意義とは
  • 高速な安定ソートアルゴリズム "TimSort" の解説 - Preferred Networks Research & Development

    先日、TimSortというソートアルゴリズムが話題になりました。TimSortは、高速な安定ソートで、Python(>=2.3)やJava SE 7、およびAndroidでの標準ソートアルゴリズムとして採用されているそうです。 C++のstd::sort()よりも高速であるというベンチマーク結果1が話題になり(後にベンチマークの誤りと判明)、私もそれで存在を知りました。実際のところ、ランダムなデータに対してはクイックソート(IntroSort)ほど速くないようですが、ソートというシンプルなタスクのアルゴリズムが今もなお改良され続けていて、なおかつ人々の関心を引くというのは興味深いものです。 しかしながら、オリジナルのTimSortのコードは若干複雑で、実際のところどういうアルゴリズムなのかわかりづらいところがあると思います。そこで今回はTimSortのアルゴリズムをできるだけわかりやすく解

    高速な安定ソートアルゴリズム "TimSort" の解説 - Preferred Networks Research & Development
    syanbi
    syanbi 2011/10/27
    TimSort
  • 正規表現エンジンを作ろう (2)〜NFAとDFAを実装する〜:CodeZine

    はじめに こんにちは。hirataraです。 稿は、正規表現エンジン作成の第2回目です。前回は正規表現の数学的な側面を説明しました。今回は正規表現エンジンの実際の評価器となる、NFAとDFAを実装します。 対象読者 正規表現をもっと知りたい方 情報科学分野に興味がある方 正規表現エンジンを実装する必要がある方 必要な環境 サンプルはPython2.5で開発しましたが、2.4の環境でも動くはずです。 Python2.5 が動作する環境 実装する正規表現の仕様 今回から正規表現エンジンの実装に入りますが、実際に手を動かし始める前に、到達すべきゴールを明確にしておきましょう。まず、連載中に実装する正規表現の仕様を決定します。この連載では数学的な定義である3つの正規表現のみを実装し、正規表現が当にDFAと等価であり、DFAをシミュレートすることで実装できることを確かめます。 文法 これから作る

    正規表現エンジンを作ろう (2)〜NFAとDFAを実装する〜:CodeZine
    syanbi
    syanbi 2011/10/22
    この記事を見つけたのでちょっとやってみるか。
  • BeProudさんで草鞋を脱ぐ - atsuoishimoto's diary

    まだ100%確定という訳ではないが、著名なPython企業である BeProud さんで、11月からお仕事をさせていただくことになりそうだ。ちょっとお話でも、という事でお邪魔させていただいたら、なかなか面白そうな案件を伺って、決めてきてしまった。自分でもちょっと意外な展開である。 草鞋を脱ぐとは言っても、当面はバイト待遇で、と言うことでお願いした。なんでバイトかといえば、今後の進路を決めかねているというのもあるが、主にBeProudでちゃんと仕事ができるか、今ひとつ自信がないためだ。普通の受託開発でプロジェクトに参加するのは当に久しぶりで、自分の中で調整して勘を取り戻すのに、色々と時間がかかりそうな気がするのだ。 ということで心配な面もあるのだが、それでもBeProudで働けるのは楽しみで、不安感とか緊張はあまり感じない。なにしろ、現在でも私のTwitterのタイムラインはBeProud

    BeProudさんで草鞋を脱ぐ - atsuoishimoto's diary
    syanbi
    syanbi 2011/10/12
    いいなxa