AquesTalk2 WinおよびAquestalk Winを Python から使用します。
サウンドデバイスから発声させる。
>>> import aquestalk2 >>> aquestalk2.talk(u"あしたの/て'んきわ、いちにちじゅー/はれ")
音声をファイルに保存する。
>>> import aquestalk2 >>> aquestalk2.write_wav(u'yorosidesuka.wav', u"よろし'いですか?")
音声をバイナリ列として取得する。
>>> import aquestalk2 >>> wav_data = aquestalk2.synthe(u"ぱいそん") >>> wav_data[:4] 'RIFF'
連想検索エンジン Reflexa を Python から使用します。
日本の祝日を判定する jholiday.py の私的改造版です。
引数に datetime.date オブジェクトを受け取る holiday_name_date 関数を追加しました。Python 3 系でも 2to3.py で変換すれば使えるようにしました。ある期間(デフォルトは2001年から2020年の間)の祝日をキャッシュし、期間内ならば速度が上がるようにしました。
日本の祝日を判定する jholiday.py の C エクステンション版です。
コンパイルが必要である代わりに Pure Python よりも速度が速くなっています。引数に datetime.date オブジェクトを受け取る holiday_name_date 関数を追加しました。
旧暦および六曜を算出します。オリジナルは QREKI.AWK です。
qreki.py ファイルのみで動作させることができます。しかし、 setup.py build を行って _qreki C エクステンションをビルドすることで、より高速の動作が可能となります。
>>> from qreki import Kyureki >>> k = Kyureki.from_ymd(2009, 11, 27) >>> print k 2009年10月11日 >>> print k.rokuyou() 友引
あじ氏の「AviUtl Control ver1.4」を使用することで AviUtl を Python から操作します。
ケンシロウ進数の習得補助ライブラリ。あたたたたたたた。
「ケンシロウ進数」、「ケンシロウ進数2」、「ケンシロウ進数ランレングス圧縮版」をあつかうジョークライブラリです。通常は正整数に対して用いるものですが、独自解釈で、バイト列も扱えるようにしています。
>>> import kensiroulib.ver1 as ver1
>>> s = ver1.encode_int(128)
>>> print s
あたたたたたたた
>>> ver1.decode_int(s)
128
>>> s = ver1.encode('kensirou')
>>> print s
たああたあたああたああたたあたあたああたあああたたあああたたああたああたあたたあ
たあああたたあたたああたああああたあああたあたあ
>>> ver1.decode(s)
'kensirou'
スミス数という数を扱うためのライブラリです。素数などの有名な数と比べると遊びの域を出ないものではあります。このライブラリでは http://www.shyamsundergupta.com/smith.htm (英語)にて紹介されているスミス数の判定および、スミス数列の生成をおこなうことができます。
Python 2.6.4 にて動作確認しています。 version 1.0.1 にて Python 2.5.4 でも動作するよう修正しました。 version 1.0.2 にて Python 2.4.4 でも動作するように修正しました。
>>> from smithnumber import smith_numbers >>> for n in smith_numbers(): ... if n > 30: ... break ... n ... 4 22 27
Windows XP の MinGW を用いて MeCab の Python バインディングをコンパイルしてみました。
libmecab.dll, mecab-python, IPA 辞書の3つと mecabrc を組にして使ってください。 mecabrc は空のファイルでかまいませんが、辞書を指定しておくと便利です。たとえば、次のようにします。
dicdir = ipadic
簡単な使用例です。
>>> import MeCab
>>> s = u'すもももももももものうち'
>>> tagger = MeCab.Tagger('-r mecabrc')
>>> result = tagger.parse(s.encode('utf-8'))
>>> result = result.decode('utf-8')
>>> print result
すもも 名詞,一般,*,*,*,*,すもも,スモモ,スモモ
も 助詞,係助詞,*,*,*,*,も,モ,モ
もも 名詞,一般,*,*,*,*,もも,モモ,モモ
も 助詞,係助詞,*,*,*,*,も,モ,モ
もも 名詞,一般,*,*,*,*,もも,モモ,モモ
の 助詞,連体化,*,*,*,*,の,ノ,ノ
うち 名詞,非自立,副詞可能,*,*,*,うち,ウチ,ウチ
EOS
Python の ctypes モジュールや Python/C API の勉強のために作成したものです。動機が不純(AviUtl を操りたい、ではない)であり、動作チェックはしているうちにはいりません。まともな動作は期待できません。 PyAviUtlControl のほうを使用してください。
AviUtl を Python から操作します。 PyAviUtlControl との違いはこれ単体で動作するということです。
あじ氏の「AviUtl Control ver1.4」のソースコードを参考に作成しています。
内容は ctypes モジュールを使用した aviutllib.py と Python/C API を用いた caviutllib.c の 2 つです。最初にできたのは aviutllib.py で、これを C 言語に再移植してできたのが caviutllib.c です。
caviutllib.c のコンパイルは Visual C++ 2008 Express Edition と MinGW(gcc 3.4.5) で確認しています。ソースは BOM 付の UTF-8 で書かれているので MinGW でコンパイルする場合は BOM を削除してください。