※追記 MinGWを使用してビルドできました! ThriftをWindowsのPythonで使用する(Pythonエクステンションのビルド) Debian上のPythonでThriftが使えることがわかりました。 ThriftをPythonで使用する サーバーはLinux、クライアントはWindowsで動くか試してみたのですが・・・ 作戦失敗でいったん撤退です。 リトライする時用にメモ書きを残しておきます。 Python拡張のWindowsインストーラー作成 このコマンドで拡張モジュールのインストーラーが作成できる模様。 そもそもはVisual Studio 2008 Express Editionでビルドしようとしたのが はまった原因でした。 普段はPython2.5を使用しているのですが、このバージョンはVisual Studio 2003で ビルドされています。 そのため、インストー
今回はctypesモジュールです。 ctypesモジュールは「Pythonのための外部関数ライブラリです。このライブラリは Cと互換性のあるデータ型を提供し、動的リンク/共有ライブラリ内の関数呼び出しを可能にします。動的リンク/共有ライブラリを純粋なPythonでラップするために使うことができます。 」とドキュメントに記載されています。 要は、Pythonから、dllを呼び出せるよ。ってことですね。 ただし、C++形式のDLLは、クラスや派生などが絡むんで、呼び出しには苦労しそうなので、スルーし、C言語形式のDLLのみ試したいと思います。 (尚、COM形式の場合、Python for Windows extensions(PyWin32)に含まれるwin32comモジュールを使うのが良さそうです) まず、使い方をctypesのチュートリアルを見て確認しましょう。 大体どの言語でも同じなので
ctypes を利用すると C 言語のランタイムライブラリの関数を呼び出すことができます。 ここでは Windows 上の Microsoft VC++ ランタイムライブラリ (msvcrt) と Linux の C ライブラリを呼ぶ方法を紹介します。 Windows 上での C ライブラリ関数の利用 Windows での C ランタイムライブラリは msvcrt.dll です。次の Python スクリプトでは、cdll.msvcrt としてそれを読み込み、printf で文字列や整数を出力しています。 from ctypes import * msvcrt = cdll.msvcrt # Print string msvcrt.printf("Hello, world!\n") # Print int for i in range(5): msvcrt.printf("%d\n", i
本題の前に どうやら日記放置しすぎたようですが、それはまあ気にしない。 今回のお題はPythonです。 最近Science with PythonというコミュニティがGoogle groupにできましてですね、Twitterでのハッシュタグは#sciwpyなんですが、せっかく参加したので科学技術計算で残念ながら現役バリバリのFortranをPythonから利用する方法を書いてみよーかと。 PythonからFortranを使う利点 Pythonにもnumpyとかscipyとか便利な数値計算のためのライブラリがあるので、軽い数値計算ならPythonだけでも十分いけます。PyPyとかCythonという選択肢もありますし。 ところが、かなり重い計算とか、すでにFortranでコードがある状態だとPythonで書くor書き直す気にはならないのですよ。なぜか? Pythonで速く書けても、CやFort
2012年2月15日水曜日 はじめての PySide with Qt Designer Python で書いた CUI ベースのプログラムに薄い GUI をかぶせる必要があったので,この機会に以前から関心のあった PySide を使ってみた。 すぐに忘れてしまいそうな気がするので,Qt Designer を使って簡単な GUI アプリケーション作成する方法について,要点をメモしておく(Qt Designer を使わずコードオンリーで作成する方法についてはチュートリアル記事を参照)。 今回は Windows 環境で開発するので,ダウンロードページにあるリンクをたどって,Windows 用のバイナリーをダウンロード,インストールする。Qt の SDK は不要。Qt Designer(と Qt Linguist)は PySide の一部としてインストールされる。site-packages の
http://www.riverbankcomputing.co.uk/software/pyqt/ http://pyqt.sourceforge.net/Docs/PyQt5/index.html クロスプラットフォームなGUIアプリケーションを作るためのC++ツールキットである Qt をPythonから利用するためのライブラリ。 ほかのPythonバインディングとしては Qt プロジェクト公式の PySide があるけど、 なぜかそれよりもこちらのほうが早く Qt 5 や Python 3 に対応したりしてる。 単独で実行可能なファイルに固めるには PyInstaller を使う。 Installation Linuxなら apt-get を使ってもよい。 Qt Library をインストール SIP をインストール http://www.riverbankcomputing.co.
PythonからODBC経由ではなく、直接Symfowareにアクセスする拡張モジュールを 作ってみようかと。 それには、Windowsで動作するPythonのC言語拡張ライブラリの作り方が わからんことには、話が進みません。 Python2.5.2をターゲットにC言語の拡張ライブラリの作り方を調べてみます。 Python Windows FAQ 5 Is a *.pyd file the same as a DLL?を見てみると・・・ pydファイルって中身はdllと一緒? ちょっと違うけど、pydはdllと一緒だと思っていいよ。 foo.pydっていう名前のdllを作る場合、initfoo()という名前の関数が必須になる。 Pythonで「import foo」を実行したとき、Pythonはfoo.pyd(あと、foo.py, foo.pyc)を探して 最初に見つかったヤツのinitf
Pyramid is a flexible Python web framework that allows applications to start small and grow as needed without enforcing specific technologies or patterns. The document provides suggestions for structuring larger Pyramid projects, choosing persistence mechanisms, assembling toolkits, using traversal vs URL dispatch, testing, documenting, and deploying applications using buildout, supervisor, and Ng
Pyramidのわだいです。 “.mak” または “.mako” で終わるテンプレートファイル名は Mako レンダラー に送られます。 “.html”のような他の拡張子が使いたければ、 main 関数に これを入れてください: config.add_renderer(“.html”, “pyramid.mako_templating.renderer_factory”) 引用元 で、こういうののjinja2はどうしたらいいのか探してましたのよ。 pyramid.mako_templating.renderer_factory これはなーに?どういう決まりでこれになってんの。分からない。 あたしはMakoを使うつもりがない。いいテンプレートエンジンなのは知ってる。少し。あたしの好みはJinja2でありGenshiなので、Jinja2が動いてくれないと嫌なのです。 #Genshiはちょっと
The Python SQL Toolkit and Object Relational Mapper SQLAlchemy is the Python SQL toolkit and Object Relational Mapper that gives application developers the full power and flexibility of SQL. It provides a full suite of well known enterprise-level persistence patterns, designed for efficient and high-performing database access, adapted into a simple and Pythonic domain language. Documentation Curre
SQLAlchemy + URLディスパッチ Wiki チュートリアル¶ このチュートリアルでは Python に詳しい開発者に SQLAlchemy と url dispatch ベースの Pyramid アプリケーションを紹介します。 チュートリアルを終えた時点で、開発者は基本的な認証付き Wiki アプリケーションを作成したことになります。 カットアンドペースト目的で、このチュートリアルの全てのステップのソースコード を閲覧することができます。 https://github.com/Pylons/pyramid/tree/1.3-branch/docs/tutorials/wiki2/src.
setuptoolsを使ったpluginサンプル¶ Pythonでplugin的な仕組みを作るとしたら__import__やimpを使う方法が ありますが、今の流れ的にはsetuptools対応して簡単にパッケージング や配布、PyPIでの公開、buildoutへの対応など行うことも視野に入れて いきたいところです。 と言ってもやらないと行けないことは少ないので、__import__の使い方 を調べて試行錯誤するよりも簡単かもしれません。 前準備¶ plugins.zip を展開します: plugins/ +-- README.txt +---p1/ | +-- foo_plugin.py | +-- setup.py | +---p2/ | +-- bar_plugin.py | +-- setup.py | +---server/ +-- server.py
Die Möglichkeit der Formatierung und Strukturierung ist beim Schreiben von Texten ebenso wichtig wie der eigentliche Inhalt. Um größere Inhalte zu verfassen, braucht es eine sinnvolle Struktur, um die Übersicht nicht zu verlieren und sicherstellen zu können, dass die entsprechenden Inhalte gelesen und ausgeführt werden können. Dafür bieten sich verschiedene Lösungen an, die ihre Vor- und Nachteile
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く