1 名前:デフォルトの名無しさん mailto:sage [2009/07/01(水) 22:23:19 ] Pythonオフィシャルサイト www.python.org/ 日本Pythonユーザ会 www.python.jp/Zope/ まとめWiki python.rdy.jp/ 関連スレ find.2ch.net/?BBS=ALL&TYPE=TITLE&STR=python 前スレ pc12.2ch.net/test/read.cgi/tech/1240678081/
445 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 19:21:31 ] >>443 そもそもスクリプトでLinuxに依存するような機能を使ってたり、 Linuxに依存するようなことをやってたらどっちにしろ動かない。
446 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 19:21:37 ] クロスコンパイラは無いんじゃまい?
447 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 19:22:14 ] >>443 人の話を聞けよ。 >ただし、Linux上でWindows上で実行可能なexeを作る「だけ」なら環境を構築してあげれば可能かもしれない。 >当然Linux上ではそのexeは動作しないが。 って先に答えを書いてるじゃないか。 py2exeがやってることはpycをzipで固めて1exe化した pythonインタプリタにくっつけているだけなので、やろうと思えば他のOS上でもできる。
448 名前:デフォルトの名無しさん [2009/08/16(日) 19:29:05 ] >>444 ・lenny packages.debian.org/ja/lenny/python ・squeeze packages.debian.org/ja/squeeze/python ・sed packages.debian.org/ja/sid/python ・experimental デフォルト packages.debian.org/experimental/python etc... packages.debian.org/experimental/python2.6 packages.debian.org/experimental/python3 packages.debian.org/experimental/python3.1
449 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 20:03:11 ] >>448 すんません、aptラインの書き方わかんないす・・・orz
450 名前:デフォルトの名無しさん [2009/08/16(日) 20:08:25 ] >>449 experimentalパッケージでも入れると申すか! 悪いことは言わんまだ使うな
451 名前:デフォルトの名無しさん [2009/08/16(日) 20:10:26 ] >>447 おまえも人の話聞けよ
452 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 20:31:47 ] GTKの人かw
453 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 13:26:19 ] >452 あ〜、なるほど なんかもやもやしてたのがすっきりした!
454 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 17:01:57 ] cmake
455 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 17:28:58 ] numpy関連のバージョンをlinuxのデフォルトバージョンから手動で上げようとしたら めんどくさすぎて死んだ asdfみたいな簡単な仕組みはないの?
456 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 17:50:09 ] 「make」と鬱と「負け」って読んじゃうんだよな
457 名前:デフォルトの名無しさん [2009/08/17(月) 18:34:23 ] 3.x 系列でも type(hoge) == types.DictType とかで 型を判定することができますか?
458 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 18:41:59 ] それってisinstanceじゃダメなの?
459 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 19:12:45 ] >>443 Linux上でPy2Exeは動かない WineでWinのPython実行環境を構築すれば、 Python作ソフトをPy2ExeでExe化可能かもしれない (やったことはないので確証は無い) 元よりWin上でPyhtonスクリプトをExe化する ものだから(どこの説明でもそう書いて あるのだが…)、WinでのPython実行環境が無いと Exe化した際の不具合の特定が面倒だよ。
460 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 23:51:13 ] Pythonのオブジェクトインスペクト関数「see()」 ttp://coreblog.org/ats/see-the-object-inspector ttp://inky.github.com/see/ 高機能なdir()って感じでなかなかよさげ
461 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 00:45:58 ] >>459 XP (note) で作った exe が他の XP (note) では動くのに XP (netbook) で動かなくて焦ったことはある
462 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 00:47:21 ] vista でも動かない orz
463 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 09:13:06 ] 動かないというだけじゃなくて、そのときの症状を具体的に言うのが、 初心者を抜け出す第一歩だよ。 とりあえず、VC++ Runtime Library の 2005 か 2008 の再頒布可能パッケージを インストールしてみな。
464 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 10:30:43 ] こんな話か? ttp://d.hatena.ne.jp/gunyara-python/20090531/hello_py2exe
465 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 10:39:09 ] DLL地獄ようこそようこ
466 名前:デフォルトの名無しさん [2009/08/18(火) 11:02:09 ] 俺のアイドル天使はいずこに?
467 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 11:07:16 ] 角電池とかよっきゅんとかここは相変わらずカオスなスレですね
468 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 16:23:58 ] イケメンハッカーも忘れないで! アッー!
469 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 16:26:12 ] またruby厨降臨?
470 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 18:29:59 ] >>464 のリンク見て不思議に思ったんだが cx_FreezeはなんでVC++ランタイムライブラリを 配布できるんだ? PSFライセンスの絡みであの手のライブラリは勝手に 配布しちゃいかんのじゃないの? そのためPy2Exeはわざと除外してんだろう
471 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 19:01:57 ] >>468 顔写真貼ればもっと盛り上がるよ
472 名前:デフォルトの名無しさん [2009/08/18(火) 20:56:04 ] pythonをsakuraエディタで使えるようにしたいんですが、 ちゃんとした色設定ファイルがありません。 原理的にどこかにあると思うんですけど、 (IDLEと同じくらいの) keyword(演算子、組み込み変数、組み込み関数、予約語等)をまとめたファイルって どこかにないのでしょうか?
473 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 22:09:04 ] > 原理的にどこかにあると思うんですけど ? 「原理的」の意味が分からない というかサクラエディタのスレで聞いた方がいいのでは?
474 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 22:16:06 ] import sys, os, itertools, keyword def importable(name): try: __import__(name) except Exception: return False return True def toplevel_modules(path): for root, dirs, files in os.walk(path): names = itertools.chain(dirs, (os.path.splitext(i)[0] for i in files)) for name in names: if importable(name): yield name break if __name__ == '__main__': words = set(keyword.kwlist) words.update(dir(__builtins__)) for i in dir(__builtins__): words.update(dir(getattr(__builtins__, i))) stdout = sys.stdout for path in sys.path: words.update(i for i in toplevel_modules(path)) sys.stdout = stdout for i in sorted(words): print i 自前で作ればいいんだよ
475 名前:デフォルトの名無しさん [2009/08/18(火) 23:28:28 ] Python 3.1 で書き始めて MySQLdbがPython 2.6どまりなことに気づいた・・ どうしよ SQLite用に書いていたソフトを MySQL用にしたいだけなんだけど 既に本体は Python 3.x にべったりで書いてる 死にたい
476 名前:デフォルトの名無しさん [2009/08/18(火) 23:40:06 ] もしかしてpyodbcでなんとかしろと? と思ったけど 3.x 系はリリースされてなかった code.google.com/p/pyodbc/downloads/list
477 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 23:42:02 ] シリーズ3作目はフラグ
478 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 00:10:02 ] MySQL の c ライブラリを直接呼べ
479 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 00:28:14 ] ctypes大作戦
480 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 08:31:36 ] ctypesっていいよね。
481 名前:デフォルトの名無しさん [2009/08/19(水) 18:20:43 ] WebARENAのsuitexが「Python の最新バージョンに対応w」らしいのですが 実際にどのバージョンが入っているかご存知の方はいらっしゃいますか?
482 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 18:28:33 ] 文字通り「Python の最新バージョンに対応w」なら 3.0 なんて有り得ん罠 良くて 2.4 と予想
483 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 19:20:42 ] 3.1.1
484 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 19:21:14 ] >>482 言ってる事おかしくね?
485 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 22:16:30 ] >>480 #include <ctypes.h> こうですか?わかりません><
486 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 22:27:30 ] 3.x系列への移行はあんまり上手くいってないのか
487 名前:472 mailto:sage [2009/08/20(木) 05:43:09 ] >>474 どうもありがとう。ようやくできた。。
488 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 12:10:46 ] 最新版にアップしてくれるのはありがたいんだけど こんな風にころころ変えられるのも困るかも ttp://php-sql-gdgd.jugem.jp/?eid=66 ttp://php-sql-gdgd.jugem.jp/?eid=67
489 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 12:31:43 ] >>488 これで3.0系にアップデートされたら阿鼻叫喚になるなw
490 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 13:01:44 ] >>481 ご存知の方はいらっしゃいますか?
491 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 22:08:58 ] 「Python 3.1.1」リリース pc11.2ch.net/test/read.cgi/pcnews/1250773470/
492 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 22:25:42 ] [ "a" for x in range (10)] と [ "a" ] * 10 は下の方が早い?
493 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 22:26:29 ] 自分でベンチマークすればいいだろうが
494 名前:デフォルトの名無しさん mailto:sage [2009/08/20(木) 22:29:33 ] 下の方が10倍以上速かった
495 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 02:24:43 ] []の中がImmutableだったら*のほうがいいってことかな
496 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 07:45:47 ] [ chr(ord('a') + x) for x in range (10) ] を [ "a" ] * 10 みたいな書き方できますか?
497 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 08:33:54 ] ttp://www.pyside.org/ pyqtは使わないほうがいいのか?
498 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 09:54:31 ] pc12.2ch.net/test/read.cgi/tech/1239996587/
499 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 11:07:03 ] ジェネレータの中でエラーが発生すると、 エラーメッセージ中のスタックトレースが ジェネレータ呼び出しまでの部分しか出力されません。 ジェネレータの内部以降のスタックトレースも 出力されるようにするにはどうすればいいのでしょうか。 処理系はIronPythonです。
500 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 13:19:35 ] >>492 下は1つを参照してるんじゃないかな?
501 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 13:23:51 ] >>500 文字列はimmutableだから、ひとつのオブジェクトへの参照のリストになって問題なし。 実際、上のも (CPythonの実装では) 全部同一オブジェクトを参照するよ。 リストのリストを作りたいときは、 [[] for x in xrange(10)] の方が良いね。
502 名前:デフォルトの名無しさん mailto:sage [2009/08/21(金) 22:16:40 ] >>499 ジェネレータの内部で try except print traceback
503 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 12:58:44 ] 人生の敗北者はもうPython使っちゃだめですか?
504 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 15:12:30 ] >>502 どもども。 手元で追試してみたら、499で書いた制限がCPythonでもIronPythonでも発生しない。 (それぞれ標準コンソールでテスト) 実はPythonインタプリタはC#プログラムから自前で呼び出してるんだが、 そこの初期化なりトラップ法なりが間違っているような気がしてきた。
505 名前:デフォルトの名無しさん [2009/08/22(土) 17:02:41 ] モジュールの先頭に """あれこれ""" とか クラスの先頭に """のれそれ""" 書いてドキュメントとしています. pydoc にかけるとそれらはただ単なる文字列として表示されるだけ なんですが,なんかこう,定められたフォーマットとかあるんでしょうか? それとは別にどっかで見たので __author__ とか __licence__ とか 設定してみたんですが,pydoc はそういうのはガン無視らしいです. いままで覚書をコメント文で書いていたんですが, ドキュメントのこともそろそろちゃんと考えないと 自分的に破たんする(先月の自分は自分じゃない)とおもって Python使いの方はどうやってるのかと.
506 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 17:11:24 ] >>505 EpydocとかPydoctorとか調べてみて。
507 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 17:39:33 ] 公開する気がないんならautherとかlicenceとかいらんような気もするけど このあたりを参考にして書けばいいんじゃないの? www.python.jp/doc/contrib/peps/pep-0257.txt
508 名前:365 mailto:sage [2009/08/22(土) 19:09:34 ] っ
509 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 20:43:56 ] なんでpythonってlist.rindex()ないの?
510 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 21:18:16 ] 需要が無いんだろ。 rangeのようにパラメータの与え方で 逆に動くかとも思って試したが出来なかった。 ソース(Ver2.6,Ver3.1)を見るとこうなってる。 for (i = start; i < stop && i < Py_SIZE(self); i++) { start>stopでデクリメントされればな〜とでも MLに投げればそのうち実装されるんじゃねw
511 名前:デフォルトの名無しさん [2009/08/22(土) 21:48:01 ] 一連の処理の開始から,要所要所までにかかる時間を できれば高精度で(1/100秒くらいで)計測したいと思っています. datetime を使って現在時刻を取得するのではとても精度が 悪いのですが,Pythonの中だけで完結できる方法としては ほかにどのような方法があるでしょうか? timeit は上のような用途には適してないと思います. ある関数内での処理時間を計測するには使えると思いますが, 複数のチェックポイントで次々とというのには不向きかと
512 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 21:55:11 ] どうしてdatetimeが出てきたのかよくわからないのだけれども time.time()かtime.clock()じゃ不十分なのかな
513 名前:デフォルトの名無しさん [2009/08/22(土) 22:17:56 ] いやぁ,単純に datetime.datetime.now() で得たオブジェクトなら そのまま print しても見やすくフォーマットしてくれるなぁ,と. で,datetime.datetime.now() でも十分な精度でした. テストした環境がVMで,しかもその上で動かしてるLinuxカーネルの タイマ割り込みの周期が1000回/秒だったせいで時計がずれまくってた だけだった. つーわけで俺のかんちguyでした
514 名前:デフォルトの名無しさん [2009/08/22(土) 22:33:33 ] 作ったスクリプトが遅いなぁと上の方法で計測してみたところ, Pythonであれこれimportしているせいか 全ての import が終わるまで10秒くらいかかってます. で,そのあとの処理はさくさくと. bogomips が500を切るNASでやってるのが悪いのですが, import を早く済ませるテクニックとかあるんでしょうか. そりゃ絶対的に必要な時間はしかたないですが・・・ ちゃんと pyc もできてるし,打つ手はないかなぁ
515 名前:デフォルトの名無しさん mailto:sage [2009/08/22(土) 23:07:16 ] importのコストのうち、pycで削減できるのはコンパイル時間のみ。 10秒もかかるってことは、どれかのモジュールのグローバルに重い処理があるんじゃない?
516 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 00:46:19 ] >>514 ある
517 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 02:47:03 ] >>514 テストした環境がVM?
518 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 11:09:27 ] (´・ω・`) God knows
519 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 02:12:48 ] 質問です。 8時間悩んだバグが単なる変数の再初期化のし忘れでした。 このやりきれない気持ちをどうすればよいですか。
520 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 02:26:18 ] >>519 自動テストを書く。
521 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 02:52:14 ] 再初期化をする必要がないスコープで書く方法を学ぶ
522 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 06:20:03 ] ∧∧ (´・ω・) おやすみ・・・ _| ⊃/(___ / └-(____/  ̄ ̄ ̄ ̄ ̄ ̄ ̄
523 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 08:54:40 ] ∧∧ (´・ω・) おはヨーグルト! _| ⊃/(___ / └-(____/  ̄ ̄ ̄ ̄ ̄ ̄ ̄
524 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 09:28:29 ] >>519 変数名の使い回しなんて最悪だ
525 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 10:30:42 ] おまえら発火損逝った?
526 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 11:27:27 ] はっかそんいった?
527 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 14:20:39 ] 同じモジュールでも、複数のファイルからimportするとその分だけメモリ消費しますか? from hoge import *だとそのファイルの物になって、複数ファイルでfromするとメモリ消費しますか?
528 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 14:29:54 ] >>527 消費しない。 あるモジュールがはじめてimportされるとき、モジュールオブジェクトが作られて、 sys.modulesに保存される。 #a.py print 'hello, I'm a' #b.py print "hello" import a a.foo = 'bar' import c #c.py import a print 'hello, I'm c' print a.foo $python b.py してみて。 次に、 c の import a を、 import sys; a = sys.modules['a'] で置き換えてみて。
529 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 16:32:27 ] 白化村征かなかったのか。駄目だなあ。
530 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 18:11:11 ] 予想してみたけど分りません(>_<) 薄荷無羊駝(シソ科ハッカ属)、咲かなかったのか。 白化村(色素が抜けて全身真っ白の人しかいない伝説の村)、まさか無かったのか。
531 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 18:25:14 ] ハッカービレッジとかそんなのか?知らんけど
532 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 22:23:57 ] GAEあほだろ
533 名前:デフォルトの名無しさん mailto:sage [2009/08/24(月) 22:46:28 ] 3.1.1で大分マシになったようだが、まだまだ遅いな。 www.gtsystem.eu/blog/2009/08/improved-performance-of-python-31/
534 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 08:52:01 ] >>526 ttp://image.blog.livedoor.jp/insidears/imgs/7/a/7a713e87-s.jpg こんな風だった
535 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 11:20:32 ] >>534 アンチ自民キモイな。
536 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 15:16:56 ] つまらない質問で悪いんだが、 タプル同士をベクトルみたいに足し算するのはどうやるの? ab = (1, 2) ac = (3, 4) abc = (ab[0]+ac[0], ab[1]+ac[1])
537 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 15:25:34 ] map(sum,zip(ab,ac))
538 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 15:51:31 ] numpy
539 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 15:53:23 ] タプルはベクトルでも行列でもねーぞ
540 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 15:53:48 ] ab = 1 + 2j ac = 3 + 4j abc = ab + ac
541 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 15:57:38 ] >>540
542 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 15:59:04 ] つまらない質問で悪いんだが、 タプルを複素数にするのはどうやるの?
543 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 15:59:25 ] >>536 tuple(ai + bi for ai, bi in zip(a, b)) おまけ:2ノルム math.sqrt(sum(ai * bi for ai, bi in zip(a, b)))
544 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 16:03:02 ] >>542 tup = (1, 2) complex(*tup)
545 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 16:12:47 ] >>542 complex(*ab)+complex(*ac)