エンジニアが発信する【Python】の記事を集めました

エンジニアが作る最新ITブログ トップ>エンジニアの発信する【Python】

2009年02月10日

Grails 向けプラグインライブラリを提供する Party Time

「Grails」 の開発者向けにプラグインライブラリを提供する 「Party Time」 というプロジェクトが開設されました。Python で実装されたWebアプリケーションフレームワーク 「Django」 向けにプラグインライブラリを提供する 「Pinax」 にインスパイアされたとのことです。 関連情報・Grails向けのライブラリ「Party Time」 - SourceForge.JP Magazine・Grails developers get Party Time for social networking - heise online UK ・MOONGIFT: ? もっとDjangoを好きになる「Pinax」:オープンソースを毎日紹介

2009年02月09日

[dev]ビデオゲームの開発にもスクリプト言語が台頭

欧米では「レベルデザイナー」という職種が確立されていて、ゲームの各ステージのデザインとユーザーエクスペリエンスに責任を持っているそうです。で、そういう人たちは試行錯誤(アジャイル開発)を行うので、C言語などではなくスクリプト言語を使うんだとか。 「スクリプト」で差がついた日米ゲーム開発の生産性 GDCを読む(2)?デジタル家電&エンタメ-最新ニュース:IT-PLUS LuaとPythonがメジャーだというのは驚きですが、「レベルデザイン」という特化ドメインに対してスクリプト言語(上に構築したD ...

2008年11月05日

Mac + Python + MeCab

プロジェクトがやや前倒しで進んでいるにも関わらず眠れないので、ちょっとpythonでmecabを使うとどんな感じか試してみた。

python25が入っていることを前提としてメモ。

参考: http://d.hatena.ne.jp/aircastle/20080925/1222269708


まずはMacPortでMeCabをInstall.

sudo port install py25-mecab 

それからutf-8な辞書をInstall.(ターミナルもutf-8だから合わせといたほうが都合がよい)

sudo port install mecab-ipadic-utf8

このままだとeucだかsjisだかjisだかの辞書を使ってるようなので、設定を書き換えて先ほどInstallしたutf-8辞書を使うようにしてやる。

sudo vi /opt/local/etc/mecabrc

変更前: /opt/local/etc/mecabrc

;
; Configuration file of MeCab
;
; $Id: mecabrc.in,v 1.3 2006/05/29 15:36:08 taku-ku Exp $;
;
dicdir =  /opt/local/lib/mecab/dic/ipadic

; userdic = /home/foo/bar/user.dic

; output-format-type = wakati
; input-buffer-size = 8192

; node-format = %m/\/in
; bos-format = %S/\/in
; eos-format = EOS/\/in

変更後: /opt/local/etc/mecabrc

;
; Configuration file of MeCab
;
; $Id: mecabrc.in,v 1.3 2006/05/29 15:36:08 taku-ku Exp $;
;
;dicdir =  /opt/local/lib/mecab/dic/ipadic
dicdir =  /opt/local/lib/mecab/dic/ipadic-utf8

; userdic = /home/foo/bar/user.dic

; output-format-type = wakati
; input-buffer-size = 8192

; node-format = %m/\/in
; bos-format = %S/\/in
; eos-format = EOS/\/in

これでutf-8な辞書を使ってくれるようになったはずなので試してみる。

[malan:/Users/malan/test]$ python
Python 2.5.2 (r252:60911, Oct 23 2008, 02:54:51) 
[GCC 4.0.1 (Apple Inc. build 5465)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import MeCab
>>> mecab = MeCab.Tagger()
>>> print mecab.parse("ほげほげテスト")
ほ	動詞,自立,*,*,五段・ラ行,体言接続特殊2,ほる,ホ,ホ
げ	名詞,接尾,一般,*,*,*,げ,ゲ,ゲ
ほ	動詞,自立,*,*,五段・ラ行,体言接続特殊2,ほる,ホ,ホ
げ	名詞,接尾,一般,*,*,*,げ,ゲ,ゲ
テスト	名詞,サ変接続,*,*,*,*,テスト,テスト,テスト
EOS

このままだと「ほげ」が単語として認識されなくて悲しいけど、とりあえず文字化けせずに表示されていればおk。

2008年08月10日

Python Server Pages

PSP・・・ゲーム機じゃなくて Python Server Pages。 Apache 設定ファイルに ここ に書いてあるような二行を追加。 .psp ファイルに ここ に書いてあるようなコードを記述。 Python コードは <% と %> の間に記述し、コメントを書きたければ、<%-- と --%...

2008年07月11日

[開発]Trac + Mercurial + Lighttpdの文字化け対策

どうもこんにちわ。最近やっと"Mercurial"をスペルミスしなくなったid:holidays-lです。


全部UTF-8に統一してTrac + Mercurial + Lighttpdを作ったら、Timelineとかが文字化けしてた。

mercurial自体はHGENCODINGを設定しなくてもUTF-8で動いていたので良かったんだけど、

mercurial-pluginの方はHGENCODINGがないとダメみたい。

参考:monospace blog » Trac + Mercurial + Apacheの文字化け対策


TracはLighttpdのfastcgiで動かしてるので、bin-environmentにHGENCODINGの指定を追加すればOKだった。

 fastcgi.server += ( "/trac"  => (
                   (
                     "socket" => "/tmp/trac.socket",
                     "bin-path" => "/usr/local/bin/python /usr/local/lib/python2.5/site-packages/Trac-0.11-py2.5.egg/trac/admin/templates/deploy_trac.fcgi",
                     "check-local" => "disable",
                     "bin-environment" => ( "TRAC_ENV_PARENT_DIR" => "/www/trac",
+                                           "HGENCODING" => "utf-8",
                                            "LC_TIME" => "ja_JP.utf8" )
                   )
                 )
               )

2008年05月26日

[ 備忘録 / Python ] IPv6 any address

socket.INADDR_ANY は IPv4 用なので IPv6 では使えない。

Linux ならば、IPv6 の場合は setsockopt でソケットオプションを自分で指定することで可能。

import socket
listen_any_address = socket.socket( socket.AF_INET6, socket.SOCK_DGRAM )

listen_any_address.setsockopt( socket.IPPROTO_IPV6, socket.IPV6_V6ONLY, 0 )
listen_any_address.bind( ("::", 12345) )

netstat で確認すると any address で待ち受けているのが確認できる。

$ netstat -anp | grep udp
udp6    0   0 :::12345      :::*        17343/python

Windows では setsockopt に IPV6_V6ONLY を指定できないのでこの方法は使えません。
Windows 版 Python で IPv6 any address を使用する方法をご存知の方。ご教授お願いします。

2008年05月08日

[Python][Jython][Java]Jython紹介サイト

「おれはJython」っていうJython紹介サイトがあった。ガキ大将ですね。 ≫[http://www.ogis-ri.co.jp/otc/hiroba/technical/jython/jython1/html4/:title] ≫[http://www.ogis-ri.co.jp/otc/hiroba/technical/jython/jython2/html4/:title] CPythonから入る前の取っ掛かりとしていいかも。 関連エントリ [http://d.hatena.ne.j ...

2008年05月08日

[Python][Jython]Jython紹介サイト

「おれはJython」っていうJython紹介サイトがあった。ガキ大将ですね。 ≫[http://www.ogis-ri.co.jp/otc/hiroba/technical/jython/jython1/html4/:title] ≫[http://www.ogis-ri.co.jp/otc/hiroba/technical/jython/jython2/html4/:title] CPythonから入る前の取っ掛かりとしていいかも。

2008年04月24日

[Python]pythonでirc

いいのあるやん。http://python-irclib.sourceforge.net/

まあでも、IRCClient.pyは暇つぶしがてらもうしばらくいじっていくつもり。

2008年04月24日

pythonでirc

いいのあるやん。http://python-irclib.sourceforge.net/

まあでも、IRCClient.pyは暇つぶしがてらもうしばらくいじっていくつもり。

エンジニアが作る最新ITブログ トップ>エンジニアの発信する【Python】

メンバー紹介

タグパネル

ランキング

エンジニアが作る最新ITブログ DODA