1 名前:デフォルトの名無しさん mailto:sage [2008/11/16(日) 19:09:55 ] Pythonオフィシャルサイト www.python.org/ 日本Pythonユーザ会 www.python.jp/Zope/ まとめWiki python.rdy.jp/ 関連スレ find.2ch.net/?BBS=ALL&TYPE=TITLE&STR=python 前スレ pc11.2ch.net/test/read.cgi/tech/1223543412/
285 名前:デフォルトの名無しさん mailto:sage [2008/11/30(日) 20:49:38 ] >>284 便利そうだ www.nasuinfo.or.jp/FreeSpace/kenji/sf/visualj/index.html
286 名前:デフォルトの名無しさん [2008/12/01(月) 11:47:04 ] 3.xへの移行ってまだまだ先でいいんですかね? 色んなライブラリのパッケージもあって楽だし 今のところは2.5が一番使いやすい環境みたいだけど、 今からそれ勉強しても無駄になりますか?
287 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 15:29:43 ] >>286 >今からそれ勉強しても無駄になりますか? 無駄にはならないと思うよ。ただ2.6を使ったり、Python 3.0で何がどう変わるのか、なぜ変わるのか、その辺りの事情についてアンテナ張って勉強しとけばオッケーかと。
288 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 15:47:03 ] 邦訳ドキュメントも2.5になったばかりだし、しばらくは2.5でいいよ。
289 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 18:28:12 ] 2.6をわざわざVC9でビルドしたが、そこで力尽きてしまった 環境全部移行するのが面倒くさすぎて、結局まだ2.5.2を使っている どーせ主要なディストリとかcygwinとかもまだキャッチアップしてないだろ
290 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 19:15:10 ] >>289 Debian stableだとまだ2.4だw 3に完全移行するのは当分先になるだろうな
291 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 19:15:26 ] このスレでturbogearsやってるのは俺だけの予感
292 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 19:32:20 ] そんなメジャーなものを使ってて良くいうよ。 俺なんかTenginだもんね。
293 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 19:37:18 ] でもturbogearsって聞かなくね? mod_wsgiで動くの?
294 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 19:37:56 ] pythonで画像処理ならPILですが 動画なら何を使うといいのでしょうか?
295 名前:デフォルトの名無しさん [2008/12/01(月) 21:51:44 ] 俺なんかTempita
296 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 22:21:28 ] なんでマイナー自慢になってんだよw
297 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 22:34:55 ] 俺はダンジョーで毎日ヤッてるよ。
298 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 22:38:07 ] >>297 Djangoの話題はスレが荒れる
299 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 22:57:04 ] ぞぺの仲間入りですね
300 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 23:04:19 ] ぞぺとどじゃんごっていろいろ似てるよな 使ってる人たちの香ばしさとか
301 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 23:26:18 ] パイパイで、ぽろーーん
302 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 00:55:46 ] pythonでインデント使わない方法はありませんか? ファイルサイズが大きくて困ってます
303 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 01:00:59 ] 気にするな
304 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 01:03:52 ] x=range(100);print x for i in x: print i;print '\n'; これなら出来るけど class hoge: def func(): pass; みたいにインデントが必要なのが2つ以上は無理だと思うよ
305 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 01:18:02 ] 今時メモリすらギガ単位で計られる時代に たかがスクリプトのファイルサイズを気にする奴がいるとはな
306 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 01:30:41 ] 低スペックに気を配れないプログラマはゴミ
307 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 01:31:53 ] 可読性に気を配れない奴もな
308 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 01:32:03 ] 300K以上のスクリプト起動すると遅くない?
309 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 01:34:27 ] インタプリタだから容量は実行速度にも影響出るだろ
310 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 01:51:35 ] じゃぁメモリに置いとけや
311 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 01:53:12 ] バイトコンパイルして実行するんだから インデントが実行速度に影響するわけないだろ
312 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 01:53:36 ] >>309 > インタプリタだから 関係ねえし。
313 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 01:57:51 ] インデント削るととか、大昔のBASICの高速化技術みたいだな 発想が化石過ぎて感動した pycってファイルが何なのか分かってるか?
314 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 02:11:32 ] 書き込み権限がないからpycが無いです
315 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 02:13:22 ] 1つの.pyに詰め込んでるのでpycが無いです
316 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 02:13:30 ] 昔のBASICって、よく使う変数はプログラムの最初の方で 宣言しておいた方が速くなるとかあったなw そういえば、レンタル鯖とかでPythonのCGIを実行する場合って pycは作られるのかな?
317 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 02:14:17 ] >>316 作られるよ
318 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 02:14:52 ] pyc作られようが作られまいが、内部的にはバイトコンパイルしてから 実行だから、「インデントが」速度に影響出るなんてことは、あり得ねえけどな
319 名前:デフォルトの名無しさん [2008/12/02(火) 04:06:23 ] >>302 > pythonでインデント使わない方法はありませんか? > ファイルサイズが大きくて困ってます ハードタブにしろ
320 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 07:30:44 ] 今時ハードタブはありえない
321 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 08:30:29 ] 内部的にバイトコンパイルする速度には影響出るが 全体の実行時間に対する割合で言えば影響は無いと言ってもいいくらいという
322 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 08:42:55 ] pc11.2ch.net/test/read.cgi/tech/1169473442/l50
323 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 10:06:44 ] >>321 ギャバンが蒸着を完了する程度の差しか無いだろうな。
324 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 10:29:07 ] Pythonのスレで思うのは バージョン間ごとの信者なんて沸かないことだな。 安定だの不安定だの、信頼性に欠けるとか。 ドキュメント化されてるからそうなってるんだろうなー。
325 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 10:36:25 ] >>324 バージョンあがるごとに確実によくなってるし、Deprecated Warning を無視していない 限りはほぼ確実に次のマイナーバージョンアップ (2.4 -> 2.5 みたいな) で問題ないから 移行も楽だからねぇ。 Python3.0も、互換性はなくなるけどオブジェクトシステムとか基本が変わらないし、 Python2.6にPython3.0移行支援が用意されてる (大量の Deprecated Warning と 2to3) から、 php4 -> php5 とか perl5 -> perl6 とか ruby1.8 -> ruby1.9 とかよりも簡単に 移行できそう。まぁ、ある程度有名ライブラリが3.0に対応してくるまで自分のアプリは 2.x 用のままだけど。
326 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 10:37:20 ] まぁ一年は様子見るけどな
327 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 18:45:34 ] PILでimage sequenceをゼロから作る方法をみつけれない どこかにいいsample codeないのかな
328 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 18:51:24 ] GoogleCodeSearch
329 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 21:41:14 ] 静止画はPIL 動画はpygame という使い分けでいいのか?
330 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 22:40:31 ] どういう用途において?
331 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 02:00:48 ] PILはaviファイルの読み込みする方法はみつけたけど 加工して書き込みできなかった pygameが読み込みも加工も新規作成もできる
332 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 14:21:04 ] クラス変数についてです。 class foo(object): CON = 'const' print foo.CON # print CON としたい 例えば上のprint文で、いちいち"foo."を書くのが面倒です。 importっぽいことをやって、"foo."を省略できるように させる方法はあるのでしょうか?
333 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 14:53:10 ] 研究室の学生の人数全分のmatlab買えないので pythonに切り替えた はたしてこの選択は間違っていなかったのか
334 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 15:10:02 ] カローラと自転車を比べてもしょうがないな
335 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 16:25:36 ] >333 python というより numpy, scipy の話って感じかな sage ってのもなんか似た臭いなんだけどどういう位置づけなのかな? scipy のさらに上位のまとめライブラリ? ただ matlab から"乗り換え" というのなら普通は scilab とか octave とかが思い浮かぶけど
336 名前:デフォルトの名無しさん [2008/12/03(水) 16:41:24 ] >>333 俺は windows用の matlab なら持ってるけど、俺がメインでつかう linux 用の matlab はもってないから、完全に matlablib に乗り換えた。 (en.wikipedia.org/wiki/Matplotlib ) matlab はソフトウェアには組込めないけど、matlablibは 簡単にインテグレーションできるので、移行してよかった。 てか、matlablib を見つけれてよかったとおもってる。 お勧めするよ。
337 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 16:45:21 ] matplotlib の話なのか、 おれが知らない matlablib の話なのか はっきりしてくれ
338 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 16:48:23 ] >>337 ごめん、matlablib は自分用語で、公式にはmatplotlib。
339 名前:デフォルトの名無しさん [2008/12/03(水) 20:20:50 ] >>333 pythonに切り替えた はたしてこの選択は間違っていなかったのか Matlab は揃いすぎ。理屈が解らなくても、マウス・クリックだけでフィルタ設計ができ てしまう。Python ならば、学生が理論を理解できていなかったら結果を出せない。学生 用ならば python のほうが良いと思う。 >>335 ただ matlab から"乗り換え" というのなら普通は scilab とか octave とかが思い浮かぶけど Python 使いならば matlab から scipy に乗り換えてもおかしくない。sympy など、他の モジュールとの連携させる意味では python のほうが matlab より扱いやすい。もう matlab は言語としては古臭くなっていると思う。 Matlab の優位性は、matlab 言語での膨大な蓄積とドキュメントの豊富さだと思う。
340 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 22:08:10 ] >>332 class foo(object): CON = 'const' CON = foo.CON print CON どうよ?
341 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 01:25:08 ] >332 import foo.CON as CON
342 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 01:36:37 ] すみません、12文字以内でお願いしますです。
343 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 02:45:06 ] file1 -------- class foo(object): CON = 'const' -------- file2 -------- from file1 import foo.CON as CON print CON --------
344 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 05:42:06 ] matlabが今のlapackみたいな位置づけになるのも遠くないのか
345 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 09:09:15 ] 話のネタっす ナイトツアー問題 slashdot.jp/article.pl?sid=08/12/03/0419216
346 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 09:56:16 ] shutil.move() ってめっさ遅くないですか? ローカルにある2MBくらいのファイルを移動するのに0.4秒から1秒かかったんですけど 流体の計算より時間かかるってどんだけ
347 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 10:48:53 ] OSやドライブorディレクトリのマウント状況によるだろう
348 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 11:05:44 ] >>346 時間がかかってるんなら、それはクロスデバイスな移動を行おうとしたからで、 実際にはコピーが走ってるんだろ コピーはshutil.copyfileobj()で行われるはずだが デフォルトでは16KB単位(デフォルト引数でlength=16*1024となっている) のようだから、ddでも使ってその環境での最適なバッファ長を確認したうえで、 shutil.copyfileobj.func_defaultsを書き換えてみたら
349 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 11:08:41 ] 言わずもがなだが、念のため キャッシュに一旦入ってしまうとコピーは一瞬で終わるし コピーの性能を評価する時には色々気をつけなければならないことは沢山あるぞ 勿論同一デバイス上でのrenameでいいのなら、それに越したことは無い
350 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 11:42:52 ] 3.0きたな。
351 名前:346 mailto:sage [2008/12/04(木) 11:43:58 ] いちおスペックは XPsp2 core2 Cドラ 空き100ギガ以上 とりあえずファイルの操作はpopenでシェル呼んでやったほうが速いですか? popen2.popen4('move '+ファイルパス+' '+ディレクトリパス+' /y') でいけますか?
352 名前:332 mailto:sage [2008/12/04(木) 12:02:47 ] >>340 >>341 >>343 お返事有難うございました。 するとなると、下記のような場合で foo.CONX を一気に CONX と 書けるようにするのは難しいのでしょうか? class foo(object): CON1 = 'const1' CON2 = 'const2' # 以下CON3などたくさん
353 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 12:04:09 ] >>351 よくわからんな Cドライブ→Cドライブの移動で、そんなに時間かかってんの?
354 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 12:21:56 ] 3.0きたけど様子見。 他のライブラリーが対応してないから
355 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 12:24:11 ] まあクオリティ的には Ruby 1.9 より断然上だよな> Python 3.0 そういえば、 Perl 6 という vaporware もありました。
356 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 12:30:13 ] まだ2.6にも移行してねえんだが……
357 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 12:41:44 ] >>353 CからCです。 いくらなんでも遅すぎですよね。
358 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 12:45:06 ] >>352 file1 -------- class foo(object): CON = [('const%d' % n) for n in xrange(1000)] -------- file2 -------- from file1 import foo.CON as CON for n in len(CON): print 'CON%d = %s' % (n, CON[n]) --------
359 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 12:47:22 ] >>357 早めにディスクのバックアップ取っとけw
360 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 13:51:33 ] sage使ってる人います? numpy単独よりも便利なのかな
361 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 14:13:38 ] pythonのコードをdllや.soにする方法ってあるのかな
362 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 14:17:33 ] 3.0のWhat's Newは短いなぁ
363 名前:デフォルトの名無しさん [2008/12/04(木) 14:21:57 ] >>362 変更点は全て列挙してあると思うけど、例を載せてほしいってこと?
364 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 15:05:48 ] 2.6に多くの機能が入ったからその分短くなったね
365 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 15:43:10 ] そういう問題なのか??? ありすぎて書けない… わけじゃなく段差の分結果的に "what's new" の項目数は少なくなったって感じ?
366 名前:デフォルトの名無しさん [2008/12/04(木) 15:44:05 ] >>365 いやいや、十分長いがなw 参考文献へのリンクも含めて読んでみろよ。
367 名前:736 mailto:sage [2008/12/04(木) 15:59:14 ] >>359 ちなみに正常な環境だと shutil.move()の実行速度って何秒くらいですか? テスト条件はできれば同じくらいの環境で
368 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 16:16:05 ] shutil.move("C:\test.txt", "C:\Test")みたいにdstにディレクトリを指定すると 実装のos.renameでOSErrorが発生してcopy2の方が呼ばれてるから遅くなってるのかな? shutil.move("C:\test.txt", "C:\Test\test.txt")みたいにファイル名を追加するか os.renameを直で使ってみたら?
369 名前:368 mailto:sage [2008/12/04(木) 16:17:10 ] ↑のはWindowsでの話。他のOSは分からない
370 名前: 株価【52】 mailto:sage [2008/12/04(木) 16:29:59 ]
371 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 17:37:20 ] >367 0秒
372 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 19:02:54 ] 具体的にはどの段階で3.0にいこうすればいいのかね?
373 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 19:35:22 ] >>372 お前の使ってるライブラリが対応したときだろ。
374 名前:デフォルトの名無しさん [2008/12/04(木) 19:59:37 ] まだ 3.0 リリースせずにユーザーがもうちょっと 2.6 に慣れてから リリースすればよかったような気がする。 でも、3.0は長い移行期間が必要とされるから、逆に早めにリリース しておきたかったんだろうね。
375 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 20:17:04 ] >>352 ... class a: ... CONST1=1 ... CONST2=2 ... for x in dir(a): ... if x.startswith("CONST"): ... exec(x + "=" + "a." +x) ... print CONST1 どうよ?
376 名前:375 mailto:sage [2008/12/04(木) 20:18:06 ] インデントがめちゃめちゃだ。 ごめんよ。
377 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 20:57:18 ] printのカッコが地味に面倒だな。 こっちの方が言語的にいいのは、頭では理解してんだけどさ。 いままでの癖がなかなか抜けなくて、ぱいそんたんに怒られてばっかりだ。
378 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 21:26:41 ] 3.0が出たので入れてみた(Vista) 早速起動した。 > help() 打ってみた。動く。 そこで出た文章に従って > modules spam 打ってみた。 エラー出た。 uft-8 ってエンコーディングが見つからないって。 ・・・・あたりまえじゃああああ どこが間違ってるのかよく分からんです。 Python30のディレクトリ下をgrepして出てくるのは Lib/test/bad_encoding.py だけ。これは想定通りだろうが・・・
379 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 21:35:52 ] ・・・もしかしてLib/testはインストール後に 除去するのが正しい使い方? 別んとこによけておいたら、↑も通った。
380 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 22:38:47 ] print("a%s%s" % ('b', 'c')) なんかキモイな…
381 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 22:42:12 ] Py3kはユニコード指定しなくていいのが嬉しい。 これでフレームワークが対応してくれれば・・・。
382 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 22:52:02 ] つーか2.5とかでも別に def printf(fmt, *args): print fmt % args, def fprintf(f, fmt, *args): print >>f, fmt % args, とか定義すりゃ printf("a%s%s\n", 'b', 'c') とか書けるわなあ print()関数は、%とカッコがC風のprintf()より冗長に見えてしまうね
383 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 23:03:10 ] setuptoolもまだ対応してないのかな?
384 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 23:06:11 ] 3.0わしょーい
385 名前:デフォルトの名無しさん mailto:sage [2008/12/05(金) 00:17:30 ] >>380 boost::format みたいだ