タグ

pythonに関するsotarokのブックマーク (92)

  • Perlは後方互換性を維持するスクリプト言語 - Perl入門ゼミ

    Perl › 読み物 後方互換性の維持という観点から見ると、二つのタイプにスクリプト言語を分類することができます。後方互換性を維持する方針を持つスクリプト言語と後方互換性を維持しない方針を持つスクリプト言語です。 後方互換性を維持する方針を持つ Perl, JavaScript 後方互換性を維持する方針を持たない Python, Ruby, PHP 各スクリプト言語の後方互換性 Perlの後方互換性 Perlは非常に高いレベルで後方互換性が維持されてきた言語です。古いバージョンのPerlで書いたスクリプトは、多くの場合新しいバージョンPerlで動かすことができますし、スクリプトの変更は最小限のものですみます。 安定性という点では、非常にPerlは定評があります。 JavaScriptの後方互換性 JavaScriptも非常に高いレベルで後方互換性が維持される言語です。ブラウザに組み込まれて

    Perlは後方互換性を維持するスクリプト言語 - Perl入門ゼミ
  • Scaling Pinterest

    A overview of how we sharded on mysql. A take on why we did not go with clustering and how we chose sharding over clustering solutions.

    Scaling Pinterest
  • 西村賢さんのPython内部文字コードの話題から端を発するUnicodeの話

    K.Takata @k_takata 「Unicode文字列型が複数の内部表現をサポート」ってどういうこと?「Python 2系からの移植を容易にするため…Unicodeリテラルシンタックスも復活」これは良い。 http://t.co/LxkUP45x 2012-03-06 21:44:00

    西村賢さんのPython内部文字コードの話題から端を発するUnicodeの話
  • 他の言語に慣れた人が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のポイント - 西尾泰和のはてなダイアリー
    sotarok
    sotarok 2012/01/26
    知らないことが結構あった
  • Python Developers Festa 2011.10 を開催します - Twisted Mind

    Python Developers Festa 2011.10 を開催予定です。 日程 2011-10-15 9:00 開場 10:00 開始 遅刻厳禁 開場時間は 9:00 - 10:00 と、12:45 ~ 13:30 の二回だけです。 ハッシュタグ #pyfes 参加費 無料 懇親会 ありません キャンセルについて ドタキャンして頂いて構いませんが、キャンセル処理だけはお願いします。 途中退場 いつ帰って頂いても問題ありません チケット 忘れずに印刷して持ってきて下さい Python と冠は付いておりますが別に Python がメインなわけではありません。発表はむしろ Python の方が少ないです。 コンセプト Python 系開発者が Python 以外の技術を知る場を作る Python 系開発者が Python スキルのレベル上げを出来る場を作る 非 Python 系開発者が

    Python Developers Festa 2011.10 を開催します - Twisted Mind
    sotarok
    sotarok 2011/09/02
    gitのことなんか話します
  • WebKit サーバーというものを作ってみた - IT戦記

    みなさん お久しぶりですヽ(´ー`)ノ夏休みの宿題終わりました? 毎日が夏休みの最終日みたいな生活してるあまちゃんです! さてさて 今日は WebKit サーバーというものを作ってみたので、紹介してみます。 WebKit って何? WebKit っていうのは Chrome や Safari の中に入ってるブラウザのエンジンのことです! 実はブラウザっていうのは、エンジン部分と見た目の部分(タブとかボタンとかね)に別れていて、意外と違うブラウザでもエンジン部分は同じものを使ってるってことも多いんですよ(*´ー`) ブラウザのサーバーってどういうこと? 要は、サーバーサイドでブラウザを起動して JavaScript を実行したり、 JavaScript が実行されないと読めないページから値を持ってくるのに使ったりしようという魂胆です。 今まではそういうのなかったの? 実は、今までは JavaS

    WebKit サーバーというものを作ってみた - IT戦記
    sotarok
    sotarok 2011/08/31
    ほおおー
  • (翻訳) WSGIは死んだ: WSGI Liteバンザイ! - YAMAGUCHI::weblog

    はじめに こんにちは、Python界の情弱クレイジー野郎です。この間Armin Ronacherが書いたWSGIに関する記事から、あちこちでWSGIに関する議論が起きてますが、とりあえずその返答記事として書かれたWSGI Liteに関する記事を訳しました。 WSGI Is Dead: Long Live WSGI Lite! (dirtSimple.org) WSGI Is Dead: Long Live WSGI Lite! ほぼ10年前、Web-SIGにはじめてWSGIのアイデアを提案したときに遡ると、WSGIがどう「フレームワーク分解機」になり得るかということに対して、私はいまよりもずっと理想主義的な展望を期待していました。すべてがプラガブルで、モノリシックなアプリケーションフレームワークを持つ理由がもはや一つもないような未来を思い描いていました。すべてライブラリ、ミドルウェア、デコ

    (翻訳) WSGIは死んだ: WSGI Liteバンザイ! - YAMAGUCHI::weblog
  • Skype4Py

    sotarok
    sotarok 2011/03/02
    skype4py
  • Python スレッドをやってみる(3) | BTY備忘録

    今回もtheading.Threadのコンストラクタに呼び出し可能オブジェクトを渡す形式でスレッドを生成する。スレッドを使った簡単な例をメモしておく。いつか役に立つかもしれない、と思うのは自分だけ。 タイマー付きスレッド スレッドが起動する前にキャンセル 一定時間ごとに繰り返し スレッド間でEventオブジェクトを使って同期をとる タイマー付きスレッド 開始時間を指定してスレッドを起動する。例では5秒後にスレッドを起動して、heloheloを表示する import threading def hello(): print "helohelo" t=threading.Timer(5,hello) t.start() スレッドが起動する前にキャンセル 5秒後にスレッドを起動するようにしておいて、2秒後にcancel()メッソドを呼んで、スレッドをキャンセルする。何もせずに終了する、という無駄

    Python スレッドをやってみる(3) | BTY備忘録
    sotarok
    sotarok 2011/03/02
    thread event
  • Python で Skype にロギングする

    id:moriyoshi さんが "Linux上で動くSkype用のbotを作る方法" というブログを書かれていたので便乗します。会社で Python から Skype へログを出力するためのハンドラーを試験的に使っていました。便利ですが、利用はお勧めしません。理由は最後に書きます。 コードはこんな感じになります。 # -*- coding: utf-8 -*- # skype_handler.py from logging import Handler try: import Skype4Py skype = Skype4Py.Skype() except: skype = None if skype and not skype.Client.IsRunning: # Skype が起動してなかったら起動する skype.Client.Start() class SkypeHandler

    Python で Skype にロギングする
  • Good night, Posterous

    Posterous Spaces is no longer available Thanks to all of my @posterous peeps. Y'all made this a crazy ride and it was an honor and pleasure working with all of y'all. Thanks to all of the users. Thanks to the academy. Nobody will read this.

    sotarok
    sotarok 2010/11/07
    pyramid
  • モダンなPythonの開発環境の構築方法 — TRIVIAL TECHNOLOGIES 2.0

    インストール Windows以外の多くのプラットフォームではすでにPythonが入っている。バージョンを調べて,使いたいバージョンより古いならインストーラやパッケージを使ってインストール。パッケージは「〜devel」をインストールしておく。 easy_installのインストール easy_installは標準ライブラリに含まれていないサードパーティモジュールをインストールする時に便利なので,入れとく。 ここからez_setup.pyをダウンロード,Pythonのスクリプトとして実行すると,自動的にコマンドがインストールされる。 $ easy_install pachage_name のようにしてパッケージのインストールができるようになる。インストールされたパッケージはlib/site-packages以下に配置される。 IPythonのインストール インタラクティブシェルはPython

  • 2to3を使ってコードをPython 3に移植する - Dive Into Python 3 日本語版

    This domain may be for sale!

  • Pythonの内包表記はなぜ速い? : DSAS開発者の部屋

    「エキスパートPythonプログラミング」の発売が、Amazonや一部の書店で始まりました。 エキスパートPythonプログラミング 著者:Tarek Ziade 販売元:アスキー・メディアワークス 発売日:2010-05-28 クチコミを見る 今回は、「エキスパートPythonプログラミング」の2章から、リスト内包表記について補足します。 書で、リスト内方表記が速い理由について、次のような訳注を書きました。 訳注:リストに要素を append() する場合、インタプリタは「リストから append 属性を取り出してそれを関数として呼び出す」という処理をしなければなりません。 それに対して、リスト内包表記を使うと、インタプリタに直接「リストに要素を追加する」という処理をさせることができます。インタプリタが解釈する命令数が減る、属性の取り出しが不要になる、関数呼び出しが不要になる、という3

    Pythonの内包表記はなぜ速い? : DSAS開発者の部屋
  • Pythonで実装されたPythonインタプリタ「PyPy 1.2」リリース、JITコンパイラ採用で高速化を達成

    PyPyはPythonで実装されたPythonインタプリタ。PyPy 1.2ではPython 2.5と互換性があり、またPythonの標準ライブラリモジュールのほとんどに対応する。また、信頼できないコードを安全に実行する「サンドボックス」機能や、スタックレスモードでの実行が可能な点なども特徴。 PyPy 1.2最大の特徴はJITコンパイラが搭載された点で、これによりCで実装されたPythonの標準実装よりも高速にPythonプログラムを動かせるという。また、さまざまな最適化機能も実装されており、大容量のメモリを使用するプログラムの場合メモリ使用量の削減も期待できるという。 なお、JITコンパイラは安定しており、クラッシュすることもないものの、対応プラットフォームがx86(32ビット)に限定されており、またコードのコンパイル時に非常に大量のメモリを使用することがあることから、まだプロダクトと

    Pythonで実装されたPythonインタプリタ「PyPy 1.2」リリース、JITコンパイラ採用で高速化を達成
    sotarok
    sotarok 2010/03/17
    jit
  • Python基礎文法最速マスター - D++のはまり日誌

    ↓に便乗してPython版も書いてみました。 Perl基礎文法最速マスター - Perl入門〜サンプルコードによるPerl入門〜 Ruby基礎文法最速マスター - Route 477 PHP基礎文法最速マスター - Shin x blog ほとんど上記の記事と同じような内容で書いたのでPython入門記事としては色々抜けていたりしますがご了承ください。 Pythonは現在3.x系がリリースされていますが記事では基的にPython2.6について書きます。 参考文献: 初めてのPython (asin:4873113938) Python Documentation Index http://www.python.org/doc/ Python 和訳Document http://docs.python.jp/2/ 0. 対話環境として使う 対話環境 pythonはそのまま実行すると対話環

    Python基礎文法最速マスター - D++のはまり日誌
  • Pythonで動的にクラスをロードしたい件 – taichino.com

    app-engine-patchを使っていて、settings.pyに記述されているAUTH_USER_MODELクラスを動的にロードしたかったんですが、簡単に方法が解らなかったのでメモしておきます。要はクラス名が文字列で与えられている場合に、そのクラスにアクセスしたいという話です。 まず対象のクラスが既にimportされている状態であれば、組込み関数のglobalsを使えます。 class Hoge: pass hoge_klass = globals()['Hoge'] hoge_instance = hoge_klass() しかし設定ファイルに書かれているクラスをロードするケースでは、対象クラスがimportされていない事も多いと思います。そこでクラスを動的にimportしたい訳ですが、僕が調べた限りでは、一旦クラスが属しているモジュールをimportし、そのモジュールからクラスを

  • Google Python スタイルガイド

    概要¶ これは Google Python Style Guide Revision 2.29 を日語に訳したものです。 家ガイドは CC-By 3.0 ライセンス の基で公開されています。また、ガイドも同ライセンスを継承します。 家ガイドの著者は以下の通りです。 Amit Patel Antoine Picard Eugene Jhong Jeremy Hylton Matt Smart Mike Shields また、ガイドの翻訳者は以下の通りです。 Kosei Kitahara ガイドに誤植、誤訳があった場合は issue で教えてください。 その他ガイドに関する問い合わせは、サイト最下部に記載のメールアドレスか @Surgo にお願いします。 はじめに¶ PythonGoogle で使われている主要なスクリプト言語です。 このスタイルガイドは Python によ

  • matplotlibで散布図を作成 - シコウサクゴ()

    散布図を描画してほしいとの指示が。しかも、要求が多かったので(色分けなどなど)、兼ねてから使いたかったmatplotlibを使って作ってみた。matplotlibのダウンロード、インストール、使い方などは Matplotlib: Python plotting — Matplotlib 3.1.0 documentation を参照してください。 作った散布図はこちら↓ 今回は、windowsで動かしました。普段はサーバー上でpythonを動かすためにCUIが多いので、matplotlibのGUIにちょっと驚きました。 ソースは以下。 # encoding=UTF-8 from matplotlib.pyplot import *; C = 4; # クラス数 f = open("data.csv"); # x座標,y座標,色を決める数値 のデータ datas = f.readlines(

    matplotlibで散布図を作成 - シコウサクゴ()
  • Boost.Python の機能をざっと紹介してみる - moriyoshiの日記

    Boost の一部ながらも「実用的」すぎるため、とかくテンプレートメタプログラミングを愛好する諸兄から黙殺されてきた不幸のライブラリ、Boost.Python。Boost.勉強会でこいつの魅力を伝えようと思ったのだけど、時間の都合で無理だったので、簡単に紹介してみたい。 Boost.Python の基礎 Boost.PythonC++ のクラスや関数をラップする Python モジュールを恐ろしく簡単に書けるようにする、強力なライブラリである。 特に、Pyrex や Cython と比べて何がうれしいのかというと、 Python側にいちいちラッパ関数を書かなくてよい (テンプレートにより自動的に定義される) コンバータを登録することで、PythonC++の型の透過的な変換が容易にできる C++ のクラスを分かりやすい形で Python のクラスとして見せることが可能 といった点が挙

    Boost.Python の機能をざっと紹介してみる - moriyoshiの日記
    sotarok
    sotarok 2009/12/14
    boost.python