Python と C/C++ と...
プログラ厶とスカートの丈はロングよりショートが好みです。
投稿フォーム:
お名前: ニックネームでも何でもかまいません(必須)
パスワード: なりすまし防止のため利用できます(任意)
記事:
 
キャンセル
13 owa #e8faefa 2005/10/12 01:21 prob:%
るびま 10 号発刊 http://jp.rubyist.net/magazine/?0010
12 owa #e8faefa 2005/01/24 20:38 prob:%
Python 2.4 で新しく追加された機能の解かり易い記事。 http://www.itmedia.co.jp/enterprise/articles/0501/24/news034.html 集合型、多倍長整数、ジェネレータ、Templateクラス、デコレータ、10進数などどれも便利そう。
11 owa #e8faefa 2004/02/04 10:40 prob:%
Python-2.3.3 の言語リファレンスとチュートリアルの翻訳完了したそうです。ありがたいことです、感謝 http://www.python.jp/Zope/ http://sourceforge.jp/projects/pythonjp/files/?release_id=8006#8006
10 owa #e8faefa 2003/12/19 16:04 prob:%
psycopg 使い易いですね。例えば --- import psycopg dsn = 'dbname=bbs user=*** host=*** password=***' try: conn = psycopg.connect(dsn) curs = conn.cursor() curs.execute("SELECT * FROM chatmaintb ORDER BY mid") rows = curs.fetchall() for r in rows: print '%3d %-20s %s' % (r[0], r[1], r[2][:50]) conn.close() except: print 'exception occurred!' --- などと python でシームレスに使える。 今まで知りませんでした。無駄なコードが必要ありません。 C/C++ だと余計なこと書かされるので、多分この数倍のサイズになってしまう;;
09 owa #e8faefa 2003/12/08 00:10 prob:%
Python2.3 は 2.3.2 で終わりかと思ったら 2.3.3 出るみたい http://www.python.org/2.3.3/index.html バグフィックスのみの良品らしい。 早く 2.3 使える状況にならないかなー
08 kiyo #7cfd9bf 2003/11/28 15:58 prob:%
>>7 充分なテストではないですが、今のところ問題なさそうです。 しかし owa さんすごいなあー 僕のソース消して正解(見なかった事にして下さい)
07 owa #e8faefa 2003/11/28 13:57 prob:%
>>6 すいません必要だったのは表示カラム数分のサイズでしたね;; --- def columns_in_utf(s, cols): size = len(s) cpos = 0 bytes = 0 while (cols > 0) and (cpos < size): c = ord(s[cpos]) if (c & 0x80) == 0: bytes = 1 cols -= 1 elif (c & 0xe0) == 0xc0: bytes = 2 cols -= 1 # 何カラム使うのかなぁ? elif (c & 0xe0) == 0xe0: bytes = 3 cols -= 2 else: break cpos += bytes if (cols < 0) or (cpos > size): cpos -= bytes return s[:cpos] --- と直してみました。一ヶ所出来てませんけど。
06 kiyo #7cfd9bf 2003/11/28 13:32 prob:%
>>4 こんなんじゃどうでしょう http://fzug.com/fzug_prog/UTF で試してみました。 私の作ったScript 指定された文字及び長さ -------------- 漢1字ひ2らabcがなカ4896タ78901カナ, 20 -------------- 返った文字 [ 漢1字ひ2らabcがなカ4 ] utf-8での文字長さ [ 27 ] 切り取られた長さ [ 27 ] owa さん作ったScript 呼び出し utfsize("漢1字ひ2らabcがなカ4896タ78901カナ",int(20 / 2 * 3)) 指定された文字及び長さ -------------- 漢1字ひ2らabcがなカ4896タ78901カナ, 20 -------------- 返った文字 [ 漢1字ひ2らabcがなカ4896 ] <-- len が 23 になる utf-8での文字長さ [ 30 ] 切り取られた長さ [ 30 ] 呼び出し utfsize("漢1字ひ2らabcがなカ4896タ78901カナ",20) 指定された文字及び長さ -------------- 漢1字ひ2らabcがなカ4896タ78901カナ, 20 -------------- 返った文字 [ 漢1字ひ2らabcが ] <-- len が 15 になる utf-8での文字長さ [ 20 ] 切り取られた長さ [ 20 ] 文字範囲の指定が必要?
05 kiyo #7cfd9bf 2003/11/28 12:22 prob:%
>>4 こんなんじゃどうでしょう おお、プロのコード綺麗だあー。 後で試してみます。
04 owa #e8faefa 2003/11/28 11:58 prob:%
とり急ぎ、こんなんじゃどうでしょう --- def utfsize(s, size): n = 0 while n < size: c = ord(s[n]) len = 0 if c & 0x80 == 0: len = 1 elif c & 0xe0 == 0xc0: len = 2 elif c & 0xe0 == 0xe0: len = 3 else: break if n + len > size: break n += len return n --- あとは後程...