PythonでCSVのFixtureをYAMLに変換(添削希望・・・)たぶん、こんな感じじゃないかなぁ。 import sys import csv import yaml def main(src, dest): reader = csv.reader(file(src)) data = list(reader) result = [] cols = data[0] rows = data[1:] for row in rows: result.append(dict([(k, v) for k, v in zip(cols, row)])) yaml.safe_dump(result, file(dest, 'wb'), default_flow_style=False, encoding='utf-8', allow_unicode=True) if __name__ == '__m
GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠
一つ前の富豪プログラミングのエントリーともつながる話だが、Google App Engineは「ちゃんとスケーラビリティを考慮してアプリケーションを作るには何に気をつけなければならないか」を勉強するには絶好の環境だ。そこで今回は、その「ケチな大富豪的なプログラミング」の実践編。 Google App Engine上のアプリをいくつか書いているうちに、必要に迫られて自然発生的にできてきたのが、gdispatchという数十行のコードからなる小さなモジュール(ソースコードはgithubに置いてある)。これをGoogle App Engineに標準で付いて来るwebappと組み合わせてフレームワークとして使っている。 gdispatchを設計する上で重視したのは、 (1)Google App Engine上でのアプリの開発を効率化する上で「明らかにこれがあると開発効率が格段に向上する」というもの以
Vim環境でPythonコードのflymakeっぽいことをしたかったのですが、 これといった決め手となる記事がなくて苦労したので、 メモを残しておきます。 (どなたか既存の記事をご存知であれば、教えてください。) 準備 まずPythonのlintライクなツールとしては、 PyChecker 、 Pylint 、 PyFlakes が有名です。 それぞれのモジュールに対するまとまった記事としては、以下が参考になります。 python 用 lint、Pyflakes vs. pyChecker vs. pylint - 傀儡師の館.Python - 楽天ブログ(Blog) Ubuntu Linuxではapt-getで簡単にインストールできました。 (easy_install経由等でも簡単にインストール可能だと思います。)
何かと最近話題のwerkzeugですが、こいつが一体なんなのか 書いてみる。 werkzeug ドイツ語で工具を意味する。pythonistaがwebアプリケーション 開発を書くための工具であるようなライブラリ。 (あくまで工具である) 具体的にはWSGI Utilityで、粒度の小さい部品のみを提供する。 部品、部品はバラ売り状態で、基本的にはWSGI対応フレームワ ークをスクラッチで組み上げるための物である。 (フレームワークを作るためのフレームワーク) 提供機能 提供してる機能は以下であるが、基本的なレベルまで実装されて いる。 代表的なもの Wrapper Request Object Response Object Request Mixin Object(Reqest拡張に使う) Response Mixin Object(Response拡張に使う) Routing Syst
何がスマートなのかは人それぞれ、プロジェクト事に違うと思いますが。 最近色々触ってみて、気付いた点。WSGI の話しです。 Werkzeug の Routing System はシンプルながら強力です。 Django で不満だった正規表現や階層の問題をシンプルに解決してくれています。 さらに WSGI で、アプリケーション事にキレイに URI を分けられるため、 何がスマートな解決方法なのかを模索しています。 色々省略してますが二つパターンを考えてみました。 パターン A ここのアプリケーションに urls.py を持たせて main.py でそれぞれの app.py を纏める方法 tests.py が独立できます werkzeug のテストは application を渡せば client.get('/') とか簡単に GAE 上でもテストできます。 - /project - main.
僕はOracleでRDBMSとかSQLを勉強した人間なので、絶対に外部キーを張り、可能であればチェック制約もかけて、絶対に不正なデータは入れさせたくないと思う人間なのだが、LAMPサーバーを並べてスケールさせるっていう今時のサイトでは、外部キーを張らない設計の方が主流らしい。・・・本当!?確かに、アプリケーションやORMで頑張れば、外部キーを張るメリットが消え、外部キーを張るデメリットだけが残り、そしてMySQLはRDBMSではなく、SQLをサポートする単なるストレージになるだろうが・・・ちなみにSQLAlchemyならばテーブル定義から外部キーを消しても、mapperの定義で明示的に示してやれば、いままで通りのコードが動くはず。以下は「飼い主(Owner)と犬(Dog)の間に一対多の関係がある」という場合の例。 # -*- coding: utf-8 -*- from sqlalchem
GAEだとそんなに複雑なものも作らないだろうというわけで。 シンプルな構成で作れるものを書いてみた。 GAE用なのでけっこー適当。 import logging import os import sys from os import path from werkzeug import Request, Response from werkzeug.routing import Map, Rule from werkzeug.exceptions import HTTPException, InternalServerError, NotFound from jinja2 import Environment, FileSystemLoader url_maps = {} TEMPLATE_PATH = path.dirname(__file__) jinja_env = Environme
BabelとはBabelはedgewallによって開発されているI18N, L10Nのためのライブラリです。Babel http://babel.edgewall.org/ Pythonでは標準ライブラリとしてGNU gettextが組み込まれており、カタログをビルドするためのスクリプト(msgfmt.pyとか)も標準でありますが、これだけでは不便です。例えば、Webアプリケーションを開発していると、テンプレート内の文字列を国際化したいというようなニーズがどうしても出てくるでしょう。Babelはこうした局面で使用することを目的として開発されているライブラリ・ツールのようです。 Djangoを使っていると、make-messages.py, compile-messages.pyで上記のような要求が満たされてしまうので、Babelのようなライブラリは全く必要がないと思います。しかし、「俺フレ
I start with a basic virtual machine – in this case, I’m using Ubuntu Server 9.10. Once you have a basic machine installed, I recommend you make sure everything’s up to date with patches. sudo apt-get update sudo apt-get dist-upgrade If you haven’t already, consider installing an ssh server for remote login. You don’t need it for hudson, but I find it makes administration easier. sudo apt-get in
Welcome! This is an introduction, with lots and lots of examples, to the nose unit test discovery & execution framework. If that's not what you want to read, I suggest you hit the Back button now. The latest version of this document can be found at http://ivory.idyll.org/articles/nose-intro.html (Last modified October 2006.) What are unit tests? A unit test is an automated code-level test for a sm
The document discusses best practices for building and deploying Django web applications, emphasizing the importance of focusing on single functionalities and avoiding feature creep by maintaining application orthogonality. It encourages developers to create multiple applications for different functionalities and to prioritize flexibility and extensibility in design. Additionally, it highlights th
Building and Distributing Packages with setuptools setuptools is a collection of enhancements to the Python distutils (for Python 2.3.5 and up on most platforms; 64-bit platforms require a minimum of Python 2.4) that allow you to more easily build and distribute Python packages, especially ones that have dependencies on other packages. Packages built and distributed using setuptools look to the us
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く