タグ

pythonに関するocsのブックマーク (59)

  • ','.join() がなぜキモイのか - methaneのブログ

    Ruby厨とPython厨が平行線の議論をしていたので、まとめてみる。 オブジェクト指向的にキモイ? str.join() 処理での登場人物は2人いる。連結文字(区切り文字=separator)、連結される文字列の列だ。 この二つを比べると、「連結される文字列の列」が情報的に重要な場合がほとんどだろう。それを元に文字列の列が主役で連結文字はオマケと考えると、「joinが主役でない連結文字側のメソッドになる何てキモチワルイ」となる。 でも、別の視点で「連結する側とされる側」というように分類すると、「区切り文字 join 連結される文字」が素直な能動態で、「連結される文字列 (is) join(ed by) 連結される文字」だと無理やりな受動態になるので、''.join() の方が素直だ。 Rubyの場合は「配列が要素をjoinする」と配列が主体となっているので、後者の考え方はしにくい。なので

    ','.join() がなぜキモイのか - methaneのブログ
  • Werkzeugのscreencast - Doge log

    こんにちわ。あらびきプログラマーmopemopeです。 なんか生産性とかうんぬんって話に全く絡めないでいます。 えーっとWerkzeugのscreencastがあるんですが、あまり紹介されてないようなので紹介しておきます。 http://werkzeug.pocoo.org/wiki30/ まあpythonistaがどんな感じコードを書いているのかがわかるんじゃないかなーと思います。 まあpythonistaじゃない人に言っておくとwerkzeugはフレームワークを作るためのフレームワークなので Webの部分はスクラッチから書いてるよーなものです。 それを踏まえてみるとwerkzeugって便利だなーってわかるんじゃないかなー。 まあそれ以上にpythonって便利だなーって思えるんじゃないかなーと思います。 (デコレータとかデコレータとかデコレータとかデコレータとか) 僕はpythonもja

    Werkzeugのscreencast - Doge log
    ocs
    ocs 2009/06/16
  • Return 0

    ocs
    ocs 2009/06/10
  • Shibu's Diary: きれいなソースコードを書けるようになるためには

    渋日記@shibu.jp 渋川よしきの日記です。ソフトウェア開発とか、ライフハックを中心に記事を書いていきます。 by chazmatazz 「構造のきれいなプログラムを書けるようになるためにはどうすればいいのか?」という質問を受けたので、「はて?どうしているだろうか?」と考えてみました。あ、形式知にきちんとなっているようなテクニックみたいなもんじゃなくて、モノローグなので、あまり凝ったものは期待しないように。あ、Pythonに限定してますが、他の言語でも似たようなものはあると思いますので、脳内変換をお願いします。 事前の設計はしません 「こういう処理が必要」「こういう計算しなきゃね」みたいなロジックや「要件はこうかな?」ということは事前に考えたりするけど、クラス構造とかは基的に考えないで手をつけます。そして、ある程度規模が大きくなって「あ、ちょっとこの関数大きすぎて理解しにくいなぁ」と

  • paverで最新のソースを取得する - Doge log

    僕はsvnやhgなどで落としてるライブラリをあるdir配下にまとめている。 こんなカンジで。 (あくまで例ですよ) ./ -- bespin -- bruce-tpt-read-only -- ctypesgen-read-only -- django -- django-command-extensions -- eventlet -- gaeutilities-read-only -- google_appengine -- jaikuengine-read-only -- jinja2-main -- mako -- nevow -- paver-read-only -- pinax -- pinsor -- projectmgr -- py3k -- pypy-dist -- pyquery -- python26 -- python27 -- remedie -- rope --

    paverで最新のソースを取得する - Doge log
    ocs
    ocs 2009/04/21
  • viewvc 1.0.7 と最新版(1.2-dev)用日本語混在環境パッチ — Plone en sourdine

    ocs
    ocs 2009/04/14
  • インデントを愛せ - 書評 - みんなのPython - ひがやすを技術ブログ

    著者より献御礼。 みんなのPython 改訂版 作者: 柴田淳出版社/メーカー: ソフトバンククリエイティブ発売日: 2009/04/11メディア: 単行購入: 23人 クリック: 572回この商品を含むブログ (84件) を見る はっきりいって、Pythonを学ぶというより、プログラミングを学ぶとしても読んで欲しい。プログラミングを学ぶために必要な項目が、きちんと整理されている。もちろん、Pythonの真髄であるインデントの書き方についてもしっかり学ぶことができる。 目次 第01章 プログラミング言語Python 第02章 変数と組み込み型 第03章 条件分岐とループ 第04章 関数 第05章 組み込み型を使いこなす 第06章 ファイル処理 第07章 華麗で短いプログラミング 第08章 クラスとオブジェクト指向開発 第09章 クラスの継承と高度なオブジェクト指向機能 第10章 例

    インデントを愛せ - 書評 - みんなのPython - ひがやすを技術ブログ
    ocs
    ocs 2009/04/10
  • PythonRecipe

    このページは、Rubyレシピブック (詳細) をPythonで書こうというたくらみです。内容は当たり前のことばかりですが、たまにしかコードを書かない人間は、こうしたことがわからなくてイライラしてしまいます。10行くらいのプログラムならさっと見てさっとかけるようにするのが目標です。 2008年1月21日19:00 ロボットによる荒らし対策を施しました。 レシピブック作成にご協力いただける方がいらっしゃいましたら、最初にユーザー登録をお願いします。 レシピブックを修正する際は、一度ログインをしてください。ログインすると右肩の部分に編集の項目が現れます。 記述方法は、structuredText もしくはreStructuredText でお願いできればと思います。 WEB上の情報 Python クイックリファレンス日語訳 pythonライブラリリファレンス pythonチュートリアル Per

    ocs
    ocs 2009/04/09
  • https://oldriver.org/python/pep-0008j.html

    ocs
    ocs 2009/04/04
  • Django Cloudを作ったよ - 偏った言語信者の垂れ流し

    Djangoのアプリケーションをコンフィグレスでデプロイする環境は前からほしかったんだ。 アップロードすればすぐに動かせる環境ってのがいいよね。 だから作ったんだ。 という4月1日メソッド。

    Django Cloudを作ったよ - 偏った言語信者の垂れ流し
  • Shibuya.pyを立ち上げます

    2009/04/01 08:56 ※ 商品のリンクをクリックして何かを購入すると私に少額の報酬が入ることがあります【広告表示】 長らく続いた戦闘に終止符をうつべく、Shibuya.pyを立ち上げます。 あたかもShibuya.pmと協調関係にあるかのような名前を勝手に付け、後ろから刺す計画です。Shibuya.pmに参加した積もりが、テックトークはPythonだらけ、というブログが溢れたら作戦成功です。 今日からわたしのことは「TKSKの介」と呼ぶように、周知徹底夜露死苦! Prev Entry Nicon D90の動画機能、あるいはXacti Next Entry Python流行ってんじゃね?

  • JSでrange - 素人がプログラミングを勉強していたブログ

    Pythonのrange(配列で返すほう)をJSで書く。 function range(from, to, step) { var i, a = []; if (typeof to == "undefined") { to = from; from = 0; } if (typeof step == "undefined") step = 1; if (step == 0) throw new TypeError("range() step argument must not be zero"); if (from < to) { if (step > 0) for (i = from; i < to; i += step) a.push(i); } else { if (step < 0) for (i = from; i > to; i += step) a.push(i); } re

    JSでrange - 素人がプログラミングを勉強していたブログ
  • 時間城年代記:禁断の奥儀、lambda + exec

    この世の中には、「やってはならない」ことがたくさんある。 しかし、今回やるような「いけないプログラミング遊び」は大いにすべきだと思う。 もちろんあなたがプロのプログラマで、仕事Pythonを使うなら、ここでやるようなコトをコードの中に埋め込んでは決してならない。 でも、あなたが何に使うでもなく手慰みにプログラムを書くのであれば、誰も文句は言うまい。 プログラミングで色々遊んでおくことは、結果的にはその言語/環境のポテンシャルを知ることになり、いざという時に(避ける、というネガティブな利用法を含め)役に立つかもしれない。 まぁ、プロのプログラマでもなく、プログラミングは九分九厘まで趣味である私には関係のない話だが…… というわけで、いつものラクガキスクリプト。 今回はPython 3になって「オイシク」成長したexec関数と、lambda式(文)の組み合わせで遊んでみよう。 ※今までPyt

    ocs
    ocs 2009/03/19
  • shaとかhashlibとか - When it’s ready.

    python2.6になって、md5モジュールとshaモジュールをインポートすると >>> import md5 __main__:1: DeprecationWarning: the md5 module is deprecated; use hashlib instead >>> import sha __main__:1: DeprecationWarning: the sha module is deprecated; use the hashlib module instead ワーニングが出てくる。ワーニングは出るけど、使えない事はない。しかし、これがpython3.0だと >>> import md5 Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No mo

    shaとかhashlibとか - When it’s ready.
    ocs
    ocs 2009/03/19
  • sqlalchemyでデータを操作する - Doge log

    いろんなデータベースを触る際、それぞれでツールの使い方を覚えるのがめんどいので書いた。 (昔、django版も書いたけど) sqltools.py from sqlalchemy import create_engine, MetaData from sqlalchemy.orm import mapper from sqlalchemy.orm import sessionmaker from types import ClassType import re def camelize(str): p = re.compile(r'_([a-z])') return p.sub((lambda match:match.groups(0)[0].upper()), str.capitalize()) def initialize(url, *args, **kwargs): engine =

    sqlalchemyでデータを操作する - Doge log
    ocs
    ocs 2009/03/17
  • モダンPython開発環境入門 - Doge log

    今日、KevinさんところにBespinの話が出ててそいつを見てて思った。 最近のpython開発環境はこんな感じだろうと。 エディター 軽量なものが好まれてるのはまあどこもみんな同じだろう。 vim emacs TextMate MacだとTextMateを使ってる人がやはり多いっぽい。 ターミナル 素。 screen必須。 必須な理由はvirtualenvでactivateするからかな。 utilityモジュール もうほぼ鉄板でpip, virtualenvを使ってるっぽい。 pip virtualenv paver Bespinの動画ではpaver軽油で色々やってる感じだった。 いろんなタスクがpythonスクリプトでざくざく書けるので流行るかも知れない。 VCS まあこれももう鉄板かも。 git mercurial その他 環境に関係ないけど傾向。 sqlalchemyは市民権を得

    モダンPython開発環境入門 - Doge log
    ocs
    ocs 2009/02/27
  • What's New In Python3.0 日本語版 - 西尾泰和のはてなダイアリー

    What'sNewInPython3.0 - TSNETWiki on TextWorld 文はGuido van Rossumの"What's New In Python 3.0"( http://docs.python.org/3.0/whatsnew/3.0.html )の全訳です。 すばらしい(拍手) 気になったところはここに書きためていって、ある程度まとまってからフィードバックしようっと。 (訳注:原文では『キーワード(keyword)』と書かれているが、『予約語(reserved word)』の誤りと思われる。Pythonでは、キーワードは、引数などを指定する名前(キーワード引数)などに使われ、他の言語のように予約語の意味として使われることはほとんどない) 「誤り」ってのは言い過ぎかと。単語の定義はReference Manualを参照するのが筋。 http://docs.p

    What's New In Python3.0 日本語版 - 西尾泰和のはてなダイアリー
    ocs
    ocs 2009/01/27
  • TSNET - Text and Scripting Network

    テキスト処理とスクリプト言語を中心に取り扱います。

    ocs
    ocs 2009/01/27
  • PythonでOracleに接続する - Doge log

    そーいえば真面目にやったことなかったのでメモ。 Oracle clientのダウンロード とりあえずpure pythonでは動かないのでOracleのサイト からclientをダウンロードする必要がある。 http://www.oracle.com/technology/software/tech/oci/instantclient/index.html とりあえずBasicをダウンロードする。 ダウンロードしたら解凍して適当な場所に置く。 (libclntsh.so.x.xって奴を使う) 環境変数 clientを置いた場所に環境変数を設定する export ORACLE_HOME=解凍パス export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME とりあえず.soが見えればいい。 WIndowsの人は要らない。 cx_Oracleのダウン

    PythonでOracleに接続する - Doge log
  • ウノウラボ Unoh Labs: Pythonでメールを送信したい人のためのサンプル集

    GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠

    ウノウラボ Unoh Labs: Pythonでメールを送信したい人のためのサンプル集