1 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 09:24:54 ] このスレッドは、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。 へび使いが優しくコメントを返しますが、 お礼は Python の布教と初心者の救済をお願いします。 前スレ くだすれPython(超初心者用) pc11.2ch.net/test/read.cgi/tech/1207878910/ 関連スレ Pythonのお勉強 Part 28 pc11.2ch.net/test/read.cgi/tech/1217836194/
2 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 12:16:22 ] Py乙
3 名前:デフォルトの名無しさん [2008/08/08(金) 12:17:34 ] ◆関連リンク Python の Home Page www.python.org/ 日本Pythonユーザ会 www.python.jp/Zope/ Python 日本語ドキュメント - Pythonistaのお友達 www.python.jp/doc/release/ Pythonのバイブル的書籍 www.amazon.co.jp/dp/4797341815
4 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 12:44:00 ] Webアプリ編は板違い
5 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 14:05:27 ] 重複 ttp://pc11.2ch.net/test/read.cgi/tech/1218125335/
6 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 14:44:23 ] >>1 乙
7 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 14:50:44 ] webprog板のPythonスレはいまいち盛り上がってないなぁ
8 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 15:52:52 ] とあるプロセス(例えば/usr/bin/firefox)が動いているかどうかで分岐処理したいのですが、 どうすればいいのでしょうか?
9 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 23:01:48 ] いろいろヤバそうだけどとりあえず思いつくやり方 import os if '/usr/bin/firefox' in os.popen('ps').read(): ...
10 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 23:05:29 ] どうやばいの?
11 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 23:13:34 ] ps の出力をちゃんと解析してないので、関係ないもので True になる可能性があるとか、・・・ popen の種類がたくさんあったりして、いつもこれでうまくいくのかよく分からんとか・・・
12 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 23:27:06 ] pgrep使えばリターンコードだけで出力見ないで済むよ。
13 名前:デフォルトの名無しさん [2008/08/09(土) 21:40:14 ] スレ住民全員一致のPython本のバイブル 困った時にはこの本を注文しよう。 www.amazon.co.jp/exec/obidos/ASIN/486191423X/
14 名前:デフォルトの名無しさん mailto:sage [2008/08/10(日) 02:01:08 ] また、だまされた
15 名前:デフォルトの名無しさん [2008/08/11(月) 21:31:02 ] <a href="省略1">省略</a> <a href="省略2">省略</a> ... みたいな、リンクが列挙されてるソースから 省略1を関数に投げて、返ってきた文字列で置換 省略2を関数に投げて、返ってきた文字列で置換 ... という処理をしたいんだけど、どういう方法が考えられる? re.compile('<a href="(.+?)".+?</a>').findall(ソース)でリストを取得 して、それを元にaタグごと生成し直す方法しか思いつかない。 要は、re.sub('a','b','ソース')でa→bって置換する過程で、マッチした文字列 に応じてbを変化させるような処理をしたいんだ。 長文&説明下手でスマソ
16 名前:デフォルトの名無しさん mailto:sage [2008/08/11(月) 21:51:06 ] re.subに関数渡すとか、そういうこと?
17 名前:デフォルトの名無しさん mailto:sage [2008/08/11(月) 21:53:09 ] 検索, 取得してから置換すればいいんじゃね?
18 名前:デフォルトの名無しさん mailto:sage [2008/08/11(月) 21:56:07 ] ほんとに説明が下手だ。 具体例を挙げてくれないと、全然分からん。
19 名前:デフォルトの名無しさん mailto:sage [2008/08/11(月) 22:09:42 ] >>15 >>16 が言ってるが、 re.sub()には置換先(repl)として、ただの文字列ではなく matchオブジェクトを受け取って文字列を返す関数を渡すこともできるよ たとえばこんな風に s = '1 234 5678' print re.sub(r'\d+', lambda m: str(int(m.group()) * 2), s) が、一般論としては、htmlを扱ってるんならlxmlなりBeautifulSoupなり 使ったほうがいいと思う
20 名前:デフォルトの名無しさん mailto:sage [2008/08/11(月) 22:11:13 ] もし使い捨てツールならperlつかう方が得策。 gオプション付きの正規表現をwhileループさせれば簡単に順次処理できる。 あえてPythonならこんな感じで for m in re.finditer(regex, source): print m.span(), m.group() これだとヒットした位置(span)から前後の読み飛ばした文字列を じぶんで拾う必要がある。 もっとスマートのがあってもよさげだけど思いつかん。
21 名前:デフォルトの名無しさん [2008/08/11(月) 23:12:42 ] 15です。 力不足ですみません。とりあえずは、 >>17 でやりました。 >>19 のやり方がスマートなのかな >>20 実装するには、逐次処理する方法が簡単なんですかね 参考になりました。ありがとうございます!
22 名前:デフォルトの名無しさん mailto:sage [2008/08/13(水) 04:09:56 ] Pychinkoってなにをするモジュールなんですか?
23 名前:デフォルトの名無しさん [2008/08/13(水) 13:13:51 ] >>22 普通にあってワロタ 公式ページってここ? ttp://www.mindswap.org/~katz/pychinko/
24 名前:デフォルトの名無しさん mailto:sage [2008/08/13(水) 15:51:48 ] Pachinkoの捩りなのかなあ…。
25 名前:デフォルトの名無しさん mailto:sage [2008/08/13(水) 16:51:20 ] PyPy Pychinko Python始まってるな。
26 名前:デフォルトの名無しさん mailto:sage [2008/08/14(木) 17:53:34 ] ISO 8601フォーマットの文字列からdateオブジェクトを生成するにはどうしたらいいんですか?
27 名前:デフォルトの名無しさん mailto:sage [2008/08/14(木) 18:02:06 ] >>26 wiki.python.org/moin/WorkingWithTime
28 名前:デフォルトの名無しさん mailto:sage [2008/08/17(日) 19:21:32 ] >>24 FOAF関連のモジュールなんだから ともだちんこの捩りだろう
29 名前:デフォルトの名無しさん mailto:sage [2008/08/23(土) 23:45:28 ] python って ruby とかperlの -cwオプションみたいなのないの?
30 名前:デフォルトの名無しさん [2008/08/24(日) 00:01:57 ] >>29 pylintいれたら?
31 名前:デフォルトの名無しさん mailto:sage [2008/08/24(日) 00:07:13 ] >>30 pylintってなんですか?
32 名前:デフォルトの名無しさん mailto:sage [2008/08/24(日) 02:03:51 ] pycheckerもあるな
33 名前:デフォルトの名無しさん [2008/08/26(火) 10:45:03 ] optparse では -h と --help が最初から設定されているけど, -h を別の意味で使いたい時にはどうすればいいの? parser.add_option("-h", "--host", dest="host") ってやると optparse.OptionConflictError: option -h/--host: conflicting option string(s): -h になっちゃう (>_<)
34 名前:デフォルトの名無しさん mailto:sage [2008/08/26(火) 11:41:36 ] docs.python.org/lib/optparse-creating-parser.html >add_help_option (default: True) > If true, optparse will add a help option (with option strings "-h" and --help) to the parser.
35 名前:デフォルトの名無しさん mailto:sage [2008/08/26(火) 12:36:35 ] 横からだけどせっかく書いたので貼ってみる import optparse from gettext import gettext parser = optparse.OptionParser(add_help_option=False) parser.add_option('--help', action='help', help=gettext('show this help message and exit')) parser.add_option('-h', '--host', dest='host') options, args = parser.parse_args(['-h', 'www.example.com']) print options # {'host': 'www.example.com'}
36 名前:デフォルトの名無しさん [2008/08/26(火) 13:13:21 ] C++ だと例外「オブジェクト」を受けとって それに含まれる情報を宛てにしていろいろ例外処理できるけど, Python だと例外として投げられるのは具体的にはなに? except MyExceptionClass: 見たいに書くわけだけど,じゃ,その例外クラスの インスタンスは本当にどこかに生成されているの?
37 名前:デフォルトの名無しさん mailto:sage [2008/08/26(火) 13:32:09 ] >>36 >>> try: ... f = open('NOTEXIST') ... except IOError, e: ... print (e.errno, e.strerror, e.filename) ... (2, 'No such file or directory', 'NOTEXIST') ttp://www.python.jp/doc/release/lib/module-exceptions.html
38 名前:デフォルトの名無しさん mailto:sage [2008/08/26(火) 19:00:20 ] みんな親切だなあ
39 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 00:32:22 ] >>36 dmf.shrinemaiden.org/OpenDMF:_About_Python https://www.shrinemaiden.org/forum/index.php?topic=501.0
40 名前:デフォルトの名無しさん mailto:sage [2008/08/28(木) 00:35:54 ] ja.reddit.com/comments/6cst0/making_games_with_python_which_library_to_use flaxeater 1ポイント 5ヶ月 前[-] Easier in what way? mcantelon 3ポイント 5ヶ月 前[-] Less dependencies. 依存性高めると、後から動かし難い・・・ 引き際も大切か・・・
41 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 12:36:18 ] i = 1 j = i i = 2 print i,j ってすると当たり前のように 2 1 って表示されるんですが、 「Python の代入は束縛だ」って書いてあったので 2 2 ってのが 正しい気がするのですが、何が間違っているんでしょうか(俺が)
42 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 12:40:32 ] リテラルは束縛される対象にはなりえないってことですか?
43 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 12:53:01 ] int,long,float,str,tupleあたりはimmutableだから
44 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 12:55:54 ] i=1で1というオブジェクトが生成されiが参照する。 j=iで、jはiと同じ1というオブジェクトを参照する。 i=2で新たに2というオブジェクトが生成されiはそれを参照する。 この時点でiは2を指し、jは1を指す。
45 名前:デフォルトの名無しさん [2008/08/29(金) 12:55:58 ] >>41 >何が間違っているんでしょうか(俺が) そう、オマエの存在自体が間違っているのだよ.
46 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 12:58:04 ] >>41-42 j = iは「jをiの別名、エイリアスとせよ」という意味ではなくて、 同じオブジェクトを指すようになるだけだ その後のi = 2で、iは2に束縛される(iという名前が2を指すようになる)が、 別にjはiの別名じゃないから、(弄られてない)jは、1に束縛されたままだ つーか、束縛って別名のことじゃないと思うんだが、なぜそのように動くと 思ったんだい?
47 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 13:00:01 ] >>> a = () a は immutable object への参照 >>> b = a b は a の指し示す immutable object への参照 >>> a = (1,) a は新しい immutable object への参照 >>> print a, b (1,) () Python には名前への参照はないというだけ
48 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 13:00:16 ] >>43 こらこら、別にmutableだろうが i = [1] j = i i = [2] で、jが[2]を指すようになるわけじゃないんだから いい加減なことを言わないように
49 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 13:06:41 ] 入門書嫁
50 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 13:18:01 ] >>> i = 1 >>> j = i >>> i = 2 >>> print i, j 2 2 >>> i += 1 >>> print i, j 3 3 こんなクソ言語だれも使わないよな常考
51 名前:41 mailto:sage [2008/08/29(金) 13:31:00 ] C/C++ の参照型のようなもんかと思ってた。 boost::shared_ptr<T> のようなものか・・・
52 名前:デフォルトの名無しさん [2008/08/29(金) 14:57:31 ] >>50 "もし〜だったら"を入れないと勘違いしそう
53 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 14:57:35 ] pythonインタプリタでテストをしていて、モジュールを修正した場合、再importするにはどうすればよろしいでしょうか? いちいちインタプリタを再起動するのが面倒ですorz
54 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 15:03:12 ] >>> import foo >>> reload(foo)
55 名前:53 mailto:sage [2008/08/29(金) 15:16:36 ] >> 54 天才
56 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 16:54:16 ] >>53 IDLEならCtrl+F6を押すだけでリスタートできる。
57 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 17:27:17 ] reload() will be removed in python 3.0
58 名前:デフォルトの名無しさん [2008/08/29(金) 23:05:53 ] cPickleとpickleを使ってみようと思って import cPickle o = "a" f = file("pick.txt","w") cPickle.dump(o, f) は正常に動いたんですが、 import pickle o = "a" f = file("pick.txt","w") pickle.dump(o, f) は raceback (most recent call last): AttributeError: 'module' object has no attribute 'dump' って感じんのエラーがでるんですが、誰かpickleのサンプル書いてもらえませんか?
59 名前:デフォルトの名無しさん mailto:sage [2008/08/29(金) 23:20:37 ] とりあえずこれでも import pickle dir(pickle)
60 名前:デフォルトの名無しさん [2008/08/29(金) 23:59:13 ] 何がなんだかよくわからないのですが、 2chを読み書きするためのPythonを教えてください
61 名前:デフォルトの名無しさん mailto:sage [2008/08/30(土) 00:18:22 ] >>60 wgetだけでできるので pythonの出る幕はない
62 名前:デフォルトの名無しさん mailto:sage [2008/08/30(土) 00:35:40 ] >>60 urllib urllib2 cookielib
63 名前:デフォルトの名無しさん mailto:sage [2008/08/30(土) 11:29:19 ] >>58 そのテストスクリプトにpickle.pyと付けちゃったていうオチか?
64 名前:58 [2008/08/30(土) 12:59:04 ] >>63 きたーーwwwwナイスエスパー!!
65 名前:デフォルトの名無しさん mailto:sage [2008/08/30(土) 13:10:03 ] >>60 前に書いた奴。 クッキーの保持の方法が分からないので2回連続POSTしてるがご愛嬌。 # coding: utf-8 import urllib2, cookielib from urllib import urlencode def cnvChar(str, code, code2='utf-8'): return unicode(str, code2).encode(code) cj = cookielib.CookieJar() pd = {'bbs': 'board', 'key': 'key', 'time': '1', 'submit': cnvChar('書き込む','cp932'), 'FROM': cnvChar('名前','cp932'), 'mail': cnvChar('メール','cp932'), 'MESSAGE': cnvChar('内容','cp932'), 'hana': 'mogera'} opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj)) opener.addheaders = [('User-agent', 'Monazilla/1.00 Python/2.5'), ('Referer', 'host.2ch.net/board/ ')] r = opener.open("host.2ch.net/test/bbs.cgi ", urlencode(pd)) r = opener.open("host.2ch.net/test/bbs.cgi ", urlencode(pd)) 教えて君にはソースを見せるのが一番だね
66 名前:デフォルトの名無しさん mailto:sage [2008/08/30(土) 21:34:29 ] クッキーはIPとちょっとした文字列で、自力でも作れたと思うなぁ しかし、なんとも作りかけのスクリプトだなw まあ、とっかかりにはよいだろうが
67 名前:デフォルトの名無しさん [2008/08/31(日) 00:31:39 ] 包茎が治るスクリプトをお願いします
68 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 00:32:21 ] 自己解決しました
69 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 00:39:50 ] 病気じゃないから治んないだろ
70 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 01:00:35 ] import ueno_clinic
71 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 01:06:49 ] >>70 金銭リソースが食い尽くされた
72 名前:41 mailto:sage [2008/08/31(日) 06:08:58 ] Windows でも UNIX でも共通に使える Python から自分自身を nice する方法ってありますか?
73 名前:デフォルトの名無しさん [2008/08/31(日) 09:58:48 ] 回答まだですか?
74 名前:デフォルトの名無しさん mailto:sage [2008/08/31(日) 14:50:46 ] 自己解決しました
75 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 22:57:25 ] OpenOfficeのmacroで使うためにPythonを勉強しようと思うのだけれど、何かお薦めの入門書ってない? Pythonの入門書は色々出ているみたいで、始めてやる場合ににはどの本がいいのか分からないです。 プログラム歴はCの入門書をある程度理解している程度です。(実用で使った事はない。)
76 名前:デフォルトの名無しさん mailto:sage [2008/09/01(月) 23:29:53 ] 本ではないけど、とりあえずチュートリアルでも読んでみたら www.python.jp/doc/release/tut/
77 名前:デフォルトの名無しさん [2008/09/02(火) 14:50:51 ] すいません質問させてください pythonを勉強したいのですが何をインストールするべきでしょうか? www.python.jp/Zope/download のページの・Python標準リリースってところと 日本語環境用インストーラの二つありますが、どちらを使ったほうがいいでしょうか?
78 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 14:56:19 ] >>77 標準リリースの2.5.2のやつ。 日本語環境用のやつは古いし、選ぶ理由はないよ。
79 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 15:03:11 ] ありがとうございます標準のものを使うことにします ありがとうございました
80 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 16:51:19 ] pythonを日本語で引くとpython.jpがトップに来るんだよなあ 誰が得するんだよ
81 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 17:12:24 ] >>80 検索結果から除外するように NGサイトを登録することができればいいのにな。 個人単位で。
82 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 19:00:31 ] 80みたいなことを言って誰が得するのか知りたい。
83 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 19:02:08 ] そもそもpython単体でググってなにを求めるというのか
84 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 23:51:07 ] そういえば、日本のPythonコミュニティをどうこうするとか息巻いて玉砕してた人たちがいたよな 元気にしてるのかな? アッーー!
85 名前:デフォルトの名無しさん [2008/09/03(水) 00:20:23 ] python温泉はレベル高いから遠慮しておいたほうがいいな
86 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 00:29:44 ] そうだな 角電池くらい入れられるようにならないとな
87 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 00:35:14 ] >>85 今回もキャバクラ行くんだろうな 今からキャバクラ芸を練習しておくことにするよ
88 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 00:39:38 ] 書籍が売れなかった件についても反省して欲しいな(ww
89 名前:デフォルトの名無しさん [2008/09/03(水) 00:47:18 ] 書籍は大量に売れたよ。品切れになるぐらい。
90 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 00:48:28 ] >>86 勝手に疎外感を感じてしまいがちなボクチムは 寂しい気持ちを慰めるためにキャバクラに通います 最近はお金がないので,もっぱらイケメンのあの人を思い浮かべながら 単三電池や角電池で自分を慰めているかもしれません そんな毎日なのでずっと万年厨房の日陰者です
91 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 01:26:07 ] どんな負け犬合宿だよ(wwWwwWwwww
92 名前:デフォルトの名無しさん [2008/09/03(水) 13:45:31 ] 口だけ立派でたいしたこともできない上 すぐキレるような奴はいらないから今すぐ消えて欲しい
93 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 15:26:28 ] optparseでdefault値を設定したとき、例えば parser.add_option("-w", "--width", dest="width", default=100, help = "Width of output image (default is 100)") などとやることを考えます。 このときdefault=100と指定しているのにも関わらず、 helpの説明にdefaultが幾つかを手で書かないといけません。 これを自動化させるような方法はoptparseの標準機能では存在しないでしょうか。
94 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 15:28:48 ] %default
95 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 17:46:07 ] Windowsのコマンドプロンプトで実行する場合、 input(u"日本語文字列")ってすると文字化けします。 明示的にコマンドプロンプトの文字コード(cp932とか)にエンコードしないと駄目なんでしょうか?
96 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 17:49:06 ] >>95 環境に合わせて自動的に決定されるようにできるよ
97 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 17:54:35 ] >>96 ご回答ありがとうございます。 もうちょっと調べてみます。
98 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 23:18:04 ] >>89 >書籍は大量に売れたよ。品切れになるぐらい。 どの本だよ(wwWwwWwwwwwWWwwwWwwww
99 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 01:26:23 ] grassで返答するのはやめろ
100 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 02:12:50 ] 売れない書籍の関係者乙(wwwWwwwWWwwWwwWwWwww
101 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 12:15:01 ] >>84 >そういえば、日本のPythonコミュニティをどうこうするとか息巻いて玉砕してた人たちがいたよな >>85 >python温泉はレベル高いから遠慮しておいたほうがいいな どこの中二病だよ(wwwwwwwwwwwwwwwwwwwwwwwww Pythonはじまったな(wwwwwwwwwww
102 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 16:53:38 ] pylonsとTurboGearsとDjangoってどれが一番初心者向けですか?
103 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 22:52:49 ] twisted
104 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 23:34:38 ] pylonsとTurboGearsとDjangoとtwistedってどれが中二病っぽいですか?
105 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 23:49:01 ] hpricot
106 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 01:36:48 ] pylonsとTurboGearsとDjangoとtwistedとhpricotってどれが邪鬼眼っぽいですか?
107 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 02:03:20 ] pylonsとTurboGearsとDjangoとtwistedとhpricotとGrokってどれが日本のPythonコミュニティをどうこうするとか息巻いて玉砕してた人たちっぽいですか?
108 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 05:43:51 ] >>107
109 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 08:09:43 ] >>107 >>107 >>107 >>107 >>107 >>107 >>107
110 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 09:04:57 ] pylonsとTurboGearsとDjangoとtwistedとhpricotとGrokとweb.pyってどれが日本のPythonコミュニティをどうこうするとか息巻いて玉砕してたくせに結局できたのは傷をなめ合うだけの引きこもりオナニー集団だけだったのですねおまえらいらないからPHPでもやってろよ。
111 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 09:57:38 ] PHPはないだろ あるとすれば ocaml とか
112 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 10:10:15 ] >>110 >>110 >>110 >>110 >>110 >>110 >>110 >>110 >>110 >>110 >>110
113 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 10:44:49 ] boost.python つかったら std::vector<myclass> みたいなのが さっくりと python から扱えるようになる?
114 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 12:28:04 ] またPHP厨か
115 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 13:09:44 ] >>110 以下の一文を適宜付け加えておいてくれ 自分の能力のなさを棚に上げて他人を逆恨みする
116 名前:デフォルトの名無しさん [2008/09/05(金) 22:08:05 ] 翻訳ドキュメントの読み方のコツを教えてください。 javaのドキュメントのようには、なかなかクラスとメソッドの関係とかが 分かりません。
117 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 22:36:14 ] pydocと併用するとか、対話モードで動かしながら読むとか
118 名前:デフォルトの名無しさん [2008/09/05(金) 23:43:57 ] これは便利ですね。はじめて知りましたpydoc さすがに親クラスとかパッケージに含まれるクラスにリンクで飛ぶようなことは 出来ないですよね?それが出来れば最高なんですけど
119 名前:デフォルトの名無しさん [2008/09/05(金) 23:45:48 ] i = 1 iに1加える場合 i = i + 1 よりも簡単な方法ってないですか?
120 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 23:47:53 ] i+=1
121 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 00:11:32 ] >>118 pydoc.org/2.5.1/ epydoc.sourceforge.net/stdlib/
122 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 00:50:29 ] >>120 それ、あんま好きになれん。 結局iは+1した値を指しなおすわけで全くの構文糖てのが。
123 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 01:33:33 ] >>122 pythonで数字は普遍性を持つので CPUにとっての「簡単な方法」を追求するなら CやPerlなどの「純粋」手続き型言語を選択すべき。
124 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 01:51:25 ] >>122 pythonの場合はintがimmutableだから仕方が無いんだろう __add__()と__iadd__()は別物だから、mutableなobjectに関しては、 C++と同じように+と+=は別物として定義できるし 一般には後者のほうが効率がいいわな
125 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 02:08:44 ] >>124 __iadd__()って別個にあるんだな。しらんかった。
126 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 03:31:06 ] immutableなくせにmutableのフリをしやがってプンプン
127 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 04:19:04 ] いま PyDev 使っているんですがUSBメモリに入れて持ち歩ける開発環境を探しています。 エディタでおすすめはなんでしょうか??
128 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 04:22:51 ] emacs
129 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 04:43:17 ] >>128 Windows なんですけど、Meadow とかすか? できれば 22 系の情報キボンヌ
130 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 05:22:03 ] widowsならpyscripterでも入れとけよ
131 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 05:26:18 ] そのままJRE+Eclipseでいいんじゃないの? うまくcmdファイルを書けばいけるよたぶん。 ドライブレター固定もわざわざディスクの管理でせずに substで回避するとかで。(ダブってるとダメだけど)
132 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 08:08:38 ] pyscripterよさそう。 しかし! よく考えたらそもそも Python 自体をどうやって持ち歩くんだ? C:\Python25 以下をごそっとコピーしただけでいいんだろうか? だけどたしかその位置(C:\Python25)ってレジストリに 登録されてるんだよなぁ。
133 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 09:44:10 ] レジストリはsys.pathの初期化に使うだけ なくても動く C:\Python2Xをそのままコピーすればおk
134 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 15:35:04 ] 質問です。cat(引数はつけない)のつもりで以下のスクリプトを書きました。 import sys for line in sys.stdin: print line, コンソールから実行してみると、入力して改行しても出力されません。 そこでwhileとreadline()を使って、 import sys line = sys.stdin..readline() while line: print line, line = sys.stdin.readline() のように書き直しました。これで望む結果は得られたものの、どうもいまひとつです。 もっとスマートな方法があれば教えてください。よろしくお願いします。
135 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 15:36:31 ] すいません、インデント崩れました。 import sys line = sys.stdin..readline() while line: print line, line = sys.stdin.readline()
136 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 16:11:05 ] forループは先読みバッファを使うらしいね 下のと同じ意味で for line in iter(sys.stdin.readline, ""): print line,
137 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 16:26:01 ] レスありがとうございます。どうもそのようですね。 独自のバッファを使うことを意識しておかないと。 結局、whileループを while True: line = sys.stdin.readline() if not line: break print line, と書き直すことで解決しました。今後はこっちを使うことにします。
138 名前:今日の日記 mailto:sage [2008/09/08(月) 01:49:32 ] __setattr__()メソッドが再帰的に呼び出されないように、 このメソッドの中では object.__setattr__(self, name, value) という形式で値を代入するらしいけど、この"object"ってなによ????( ;´Д`) 自分の参考書には class MyClass(object): ってクラスの()の中に1箇所だけ記述されてるんだけど、 これって"継承"してるってこと???objectは基底クラスってこと? objectはどこに定義してあるのよ?おれはしてないよww ( ´Д`) ( ´Д`) ( ;´Д`) 寝る
139 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 01:52:48 ] 俺のPython勉強日記 pc11.2ch.net/test/read.cgi/tech/1220604777/
140 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 08:11:18 ] >>138 まともな入門書嫁。
141 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 09:13:05 ] class hoge(object): def __setattr__(self,method,value): self.__dict__[method] = value self.method = value とするとself.methodの時点で __setattr__の条件を満たしてしまい 永久ループに突入してしまうので、 オブジェクトのディクショナリを参照し、 そこに代入する形を取る。
142 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 09:19:00 ] うそを書くなよ。上のコードは動作しないぞ、気をつけろ!
143 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 09:57:31 ] >>142 ありがとうございます 危うく嘘を覚えるところでした ( ;´Д`) 引き続き解説募集中です (^o^)
144 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 13:16:45 ] とりあえず、object は基底クラスで、 class MyClass(object):... は object を継承してる。
145 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 23:55:24 ] def main(): なにか if __name__ == '__main__': main() という形式を見かけたんですかなぜこのようにしているのでしょうか?
146 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 23:57:45 ] スクリプト起動したときに 必ずmain関数が動いてほしい、という時の為のおまじない。
147 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 00:04:58 ] >>145 docs.python.org/tut/node8.html#SECTION008110000000000000000
148 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 00:05:54 ] 知らん
149 名前:145 mailto:sage [2008/09/09(火) 00:10:05 ] >>147 英語サイト貼ってんじゃねぇよ屑
150 名前:デフォルトの名無しさん [2008/09/09(火) 00:13:34 ] >>147 ありがとうございます よくわかりました
151 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 00:33:31 ] やっぱりわかりません
152 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 00:56:48 ] >>145 モジュールとしてして利用するとmainは実行されない。 単体で実行するとmainが実行される。 たいがいはテスト目的かな。
153 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 01:29:17 ] importするとそのスクリプトが実行されるという基本的なことを 説明してあげないと
154 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 01:47:41 ] __name__にはモジュール名が入る。 import sys print(sys.__name__) とやると'sys'が戻る。 でトップレベルで実行(自分自身を実行) すると'__main__'になる。 そのため、__name__ = '__main__'が成りたつ場合 自分自身が実行された、ということがわかるため、 その後にmain関数だのを列挙しておけば実行される
155 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 02:00:07 ] おいおい嘘教えるなよ。それはまったくのでたらめだろ importの内容について語るかと思ったら嘘張られるとは
156 名前:デフォルトの名無しさん [2008/09/09(火) 03:43:02 ] ひどいスレだ・・・
157 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 08:58:29 ] でたらめが多すぎる・・・
158 名前:デフォルトの名無しさん [2008/09/09(火) 09:56:15 ] そもそもPythonて言語自体が怪しくなってくる
159 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 10:19:00 ] >>158 詳しく
160 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 10:42:59 ] 自己解決しました
161 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 13:22:27 ] 入門書嫁
162 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 23:34:57 ] import urllib print urllib.urlopen("http:example.com").info() info()って一部のヘッダー情報しか出力しないよね? httpステータス(200とか)をurllibで取得することってできますか?
163 名前:デフォルトの名無しさん mailto:sage [2008/09/13(土) 00:06:51 ] HTTPでinfo()にHTTPステータスが含まれないのはそういう仕様なんだろう。 urllib2か直接httplibをつかうしかないと思う。
164 名前:デフォルトの名無しさん mailto:sage [2008/09/13(土) 07:58:24 ] >>163 なるほど。了解です。
165 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 00:48:05 ] >>164 urllib2.urlopenの返してくるオブジェクトには、なぜかcodeってプロパティがあって そこに200とかそのものずばり入ってる
166 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 11:00:51 ] Python3.0に向けて皆さんが勉強していることってなんですか? ソースビルドして動きを確かめるぐらい?
167 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 12:00:59 ] ML,PEP,NEWS.txt
168 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 13:49:16 ] Rubyに乗り換える準備をしている
169 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 13:50:45 ] >>166 本家にあるマニュアルを眺める
170 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 13:51:27 ] >>168 参考までに理由を教えて
171 名前:162 mailto:sage [2008/09/15(月) 20:07:56 ] >>165 まじっすかww自分urllibの方のコード必死に潜ってましたww クラスURLOpenerのhttp_openメソッドでhttpステータスが入った変数errcodeが if文の分岐に使われてるのを見つけたんですが、 どうやってアクセスするのが良いか悩んでたとこだったんです。。 助かります。ありがとうございました。
172 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 14:18:43 ] def f( *arg ): print arg p = None f(p) f()のargを空タプルにしたい場合、 変数pへはどんな値を代入すればいいでしょう?? ちなみに、上の場合は (None,) となってしまいます。。
173 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 14:29:52 ] 引数無しで f()
174 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 14:36:01 ] p = () f(*p)
175 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 14:37:30 ] f(*p) と書くべきじゃないの
176 名前:シベリアよりのお手紙 mailto:sage [2008/09/21(日) 08:14:33 ] 今、windows xpでpython3000を勉強しています。 ハードディスクにあるファイルを、更新日の新しいものだけUSBメモリにコピーするという スクリプトを書いたのですが、大きなファイルをコピーするとファイルの断片化がひどいです。 Explorerのコピーのように一旦連続した領域を確保してからそこにコピーというような処理は 書けないでしょうか? ついでの質問ですが、比較関数を指定したlistのsortはどうやるんですか? # Rubyでいうとこの、ary.sort{|a,b| a <=> b } みたいなやつです。 動作効率向上のために機能を削ったとかいうのは、メーリングリストで見かけましたが 全く方法がないと言うことはないと思うのですが。
177 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 09:01:19 ] 後半については L = ['one', 'two', 'three', 'four'] L.sort(cmp = lambda a, b: len(a) - len(b)) # 文字数で昇順ソート 大抵の場合はkey指定で間に合うと思うけどね (上の例の場合、L.sort(key = len)
178 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 09:25:32 ] >>176 ファイルを扱う側からすれば領域が連続するかしないかなんてどうでもいい話だから どうしてもやりたいならボリュームを直接開いてファイルシステムを直接いじることになるんじゃないの? explorer云々が本当ならどんなことしてるかスパイツール使って調べてみればいい
179 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 09:41:09 ] 常套手段として前半は 低レベルI/Oでファイルサイズ分lseek()して空write()かな。 モダンなOS・FSならこれでヒントになるとおもう。 py3kで実現できるかは試してないから不明。
180 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 22:40:40 ] xyzzyってエディタではTabによる空白を空ける事が出来ないんですが 解決方法もしくは他にオススメのエディタがあったら教えていただけませんか
181 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 22:49:54 ] C-q TAB
182 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 23:11:52 ] 有難うございます!
183 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 07:16:22 ] mod_python + publisher handler はじめて使った。 こんなに簡単に書けてしまっていいのだろうか…
184 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 23:07:38 ] Pythonの問題集っぽいのが欲しいです 一度学習した事のチェックがしたいんです
185 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 23:17:11 ] なにを求めてるんだか知らんけどな www.pythonchallenge.com/ projecteuler.net/ ja.doukaku.org/
186 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 23:27:22 ] 他言語の宿題スレの問題をPythonでやるとか
187 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 01:51:04 ] >>185 うおあありがとう >>186 なるほど
188 名前:176 mailto:sage [2008/09/23(火) 08:48:59 ] >>179 断片化に関してはだいぶよくなったような感じがします。 ですが、挙動が思ってたものと違うようで、lseekしてからwriteすると パッとそのサイズのファイルができるのではなくて、ファイル先頭から 順次\x00を書き込んでいってるような感じでした。なので全体の書き込み速度は半分に。 178氏の言うように、近いうちにexplorerの挙動を調べてみたいと思います。 分かったとしても、Cで拡張ライブラリ書くことになるのかなぁ。 >>177 Python 3.0b3 (r30b3:66303, Sep 8 2008, 14:01:02) [MSC v.1500 32 bit (Intel)] on win32 >>> L = ['one', 'two', 'three', 'four'] >>> L.sort(cmp = lambda a, b: len(a) - len(b)) # 文字数で昇順ソート Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'cmp' is an invalid keyword argument for this function cmpは動かないようです。L.sort(key = len) なら動きます。 python3000の啓蒙サイトでもcmpを使ったコードがあったんですけど動かないのはうちだけ?
189 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 09:37:08 ] if id == 1: ... とかいうコードを書いてひどい目にあった おまいらも気をつけろよ というか組み込み関数だけでも色分けしてくれるエディタを使うべきか
190 名前:189 mailto:sage [2008/09/23(火) 09:58:03 ] import __builtin__; print '\n'.join(dir(__builtin__)) で自己解決
191 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 10:03:43 ] >188 Python3000ではcmpパラメータは撤去されたらしい。すまんかった。 ttp://www.python.org/dev/peps/pep-3100/ >list.sort() and builtin.sorted() methods: eliminate cmp parameter
192 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 12:37:43 ] >>188 Windows上ではfile.truncateでファイルサイズ増やせる 後はctypesでCopyFileW,SHFileOperationWあたりを使ってみるとか
193 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 21:40:39 ] ttp://www.python.jp/Zope/intro/ ここのpycgi.cgiの中にtest.cgiって書いてあるけどこれらは同じじゃないと 動きませんよね?
194 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 22:18:25 ] そうだね。 8年前の記事なんて誰も読まないから気付かなかったんだろう。
195 名前:193 mailto:sage [2008/09/24(水) 23:45:58 ] >>194 やっぱりそうなんですね。1日悩みましたが解決して先へ進めそうです。 もし中の人がいたら修正お願いします、私みたいな初心者がつまずかないために。
196 名前:デフォルトの名無しさん [2008/09/27(土) 11:25:25 ] Python で作ったデーモンっぽいツールに (と言ってもログ監視とかその程度だけど) ちょっとしたウェブインターフェイスを付けたいと思っています。 こういう目的で使える HTTP を扱うモジュールってありますか? www.athana.org/ なんかは単体のウェブサーバだし・・
197 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 12:14:53 ] >>196 www.python.jp/doc/release/lib/internet.html
198 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 19:32:50 ] PyHP
199 名前:デフォルトの名無しさん [2008/09/28(日) 21:39:05 ] urllib の pathname2url を使って C:\cygwin\usr\local\bin\sandbox.py を変換すると /C|/cygwin/usr/local/bin/sandbox.py になります。 ドライブレターの後続の : が | になっています。 実際にはこれを URL として使おうとすると file:///C%7c/cygwin/usr/local/bin/sandbox.py となります。たしかに IE も含めてこのURLで ローカルファイルシステムのファイルを開くことができます。 : ではなく | を使う理由は、初期のNetscapeで : の 代替として | が使われていた(しかも RFC に反して %エンコードの対象から外されていた)という以外に 何か理由があるのでしょうか? また、 file:///C%7c/cygwin/usr/local/bin/sandbox.py と file:///C:/cygwin/usr/local/bin/sandbox.py のいずれが正規形なのでしょうか?
200 名前:デフォルトの名無しさん mailto:sage [2008/09/28(日) 22:15:10 ] スレ違いのような気もするが、Wikipediaによると次の理由があったのらしい。 the original URL syntax とやらの出典がないので真偽は不明。 en.wikipedia.org/wiki/File_URI_scheme > On MS Windows systems, the normal colon (:) after a device letter has sometimes been > replaced by a vertical bar (|) in file URLs. For example, to refer to file FOO.BAR in the > top level directory of the C disk, the URL file:///C|/FOO.BAR was used. This reflected > the original URL syntax, which made the colon a reserved character in a path part.
201 名前:デフォルトの名無しさん mailto:sage [2008/09/28(日) 22:23:13 ] RFC1738を見る限りでは使えそうなんだがな
202 名前:デフォルトの名無しさん [2008/09/28(日) 22:23:45 ] パスを構成する要素として使える文字 pchar の定義が RFC2396 から RFC 3986 で増えているのもそれに関連しているのかも。 RFC2396 "-" / "_" / "." / "!" / "~" / "*" / "'" / "(" / ")" RFC3986 ではそれに加えて /"&" / "$" / "+" / "," / ";" / "=" / ":" / "@" ただ、RFC2396の時点でも既に | は含まれてないんだよな… たとえ : の代わりに | を使ったとしても %エンコードしなきゃ いけないことには変わりないんだけど、ネスケはそれを無視してたらしい。 「the URL file:///C|/FOO.BAR was used」ってことで今は file:///C:/FOO.BAR でいいわけで、なんで urllib では そうなってないんだろうな、と疑問に思った次第。
203 名前:デフォルトの名無しさん [2008/09/28(日) 22:59:54 ] あ、いや、そういうことが言いたいんじゃなかった。 ドキュメントには「urllib.pathname2url() は urllib.quote() 処理された結果が返る」って書いてあるのに「|」が urllib.quote() 処理されてないじゃん、ってことが言いたかった。 バグじゃねぇ?って思ったんだけど、仕様なのかね。
204 名前:デフォルトの名無しさん [2008/09/28(日) 23:02:04 ] C:\cygwin\usr\local\bin\sand~box.py は ///C|/cygwin/usr/local/bin/sand%7Ebox.py に返還されるので ~ はエスケープ処理されるんだ。 まぁ昔のNetscapeに合わせた仕様ということなんだろう。 とはいえ RFC3986 に準拠したい自分にとっては気持ち悪い。 再度 urllib.quote() かけると % が二重にエンコードされちゃうし。
205 名前:デフォルトの名無しさん [2008/09/28(日) 23:20:04 ] urllib のコードを読んでみた。 なんのことはない、urllib.quote() は RFC3986 ではなく RFC2396 の reserved をエンコードしているだけ。 ただし "/" は引数 safe のデフォルト値なので除く。 で、そのreservedは何かというと RFC2396 reserved = ;/?@&=+$, RFC3986 reserved = :/?@&=+$,#[]!'()*;
206 名前:デフォルトの名無しさん [2008/09/29(月) 00:09:14 ] www8.uploader.jp/user/vipprog/images/vipprog_uljp00555.txt
207 名前:デフォルトの名無しさん [2008/09/29(月) 11:39:14 ] 組込み関数property()と メソッド__getattr__()、__setattr__()、__delattr__()って どっちか一方があれば事足りるような気もするんですが、 何が違うんでしょう??
208 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 12:24:32 ] >>207 __???attr__ は動的なプロパティに使えて柔軟。 propertyは用途が制限されている変わりに、単純にクラスにプロパティを追加したいだけなら楽に書ける。
209 名前:207 [2008/09/29(月) 13:04:42 ] なるほどぉ〜。そういう亊ですね。 ありがとうございます。
210 名前:デフォルトの名無しさん [2008/09/30(火) 03:45:11 ] winでscapy使ってる人います? キャプチャしたパケットをpdf表示するのにTeXが必要なんだけど MiKTeXだと上手くいくけど pLaTeX2eだとdvi出力でタイムアウトしてしまいます。 ちょっとソースみてみたところ、PyXのtext.texrunnerでexpextのパターン指定がないせいで TeXプロンプトが表示される前に入力を流し込んでるっぽい。 expextにどんなパターンを渡すかってとこで、なんだかわからずお手上げです。 まぁMiKTeX使えばいいんですけど せっかくTeXなんていう巨大なシステム入れるなら 日本語も使えるようにしたいっす。
211 名前:デフォルトの名無しさん [2008/10/01(水) 15:21:52 ] global b a = 'a desu' b = 'b desu' def a_print(): print a return def b_print(): print b return class c(object): def a(self): print a def b(self): print b print 'a printed!\n' a_print() print 'b printed!\n' b_print() x = c() print 'class-a printed!\n' x.a() print 'class-b printed!\n' x.b() exit() グローバル変数って何なの?意味ないの?
212 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 15:34:38 ] def func1(): x = 10 def func2(): global x x = 20 x = 0 func1() print "x =", x func2() print "x =", x
213 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 15:48:34 ] >>211 Pythonのglobal文は、global変数を定義するときじゃなくて それを使うとき(正確には、global変数に代入するとき)に使うもんだぞ global bってのは「bというグローバル変数を定義します」 じゃなくて 「このローカルスコープでbというグローバル変数に代入したいです」 という意味だ なにもなしでローカルスコープで b = 1 とか書いたら、単にローカルにbという変数が作られてしまうからな Pythonでは
214 名前:デフォルトの名無しさん [2008/10/01(水) 23:43:37 ] SimpleXMLRPCServerを使ってクライアントから送られたデータに クライントのIPアドレスを付加して保存したいのですが, アドレスはどのように得ればいいでしょうか? class Server: def __init__(self, port): self.server=SimpleXMLRPCServer(('localhost', self.port)) self.server.register_instance(XMLRPCMethod) self.server.servforever() class XMLRPCMethod: def __init__(self): self.database=[] def senddata(self, data): #引数が送るデータ self.database.append((data, addr)) return True
215 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 22:11:25 ] >>214 普通に動かせばデフォルトでアクセスログがstderrに吐かれるみたい あとハンドラにaddress_stringなるメンバもあるから使えるんじゃないかと
216 名前:デフォルトの名無しさん [2008/10/03(金) 00:01:56 ] py2exe は VC7.1 でコンパイルされているようですが、 たとえば boost.python を使って VC9 でビルドした DLL を使うような Python アプリケーションでも py2exe が使えるものなのでしょうか? 異なるバージョンのランタイムを使うDLLが混在 していても問題ないものなのでしょうか? boost.python をつかった Python アプリを Linux から Windows に移植しようとしています。
217 名前:デフォルトの名無しさん [2008/10/03(金) 01:31:22 ] configparser と optparse って、 こう、なんか、その、うまく連携してくれないものでしょうか?
218 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 04:53:11 ] >>216 FILE*に触ってなければ異なるコンパイラでも動くはず msvc7とmingw gccでは大丈夫だった
219 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 09:59:05 ] GoogleのAndroidのアプリをPythonで作れませんよね?
220 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 14:15:17 ] モジュールがあればなんでも出来る
221 名前:デフォルトの名無しさん [2008/10/03(金) 15:04:13 ] 2.6 ririisu
222 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 16:12:16 ] ktkr?
223 名前:デフォルトの名無しさん [2008/10/03(金) 17:02:56 ] CGIでクエリ文字列を参照したいんですが 環境変数「QUERY_STRING」にはどうやってアクセスすればいいんでしょ?? test.cgi?a=1&b2 の場合は a=1&b2 を取得したいです。
224 名前:デフォルトの名無しさん [2008/10/03(金) 17:06:19 ] >>223 import cgi data = cgi.FieldStorage() a = data.getfirst('a','')
225 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 17:07:34 ] 環境変数はos.environ
226 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 17:09:38 ] WebProg板には、こんなスレッドもあるのだ pc11.2ch.net/test/read.cgi/php/1163513344/
227 名前:223 mailto:sage [2008/10/04(土) 16:42:07 ] >>224-226 ありがとうございます!助かりました! >WebProg板には、こんなスレッドもあるのだ >pc11.2ch.net/test/read.cgi/php/1163513344/ まさかこんなスレがあるとはw
228 名前:デフォルトの名無しさん [2008/10/05(日) 02:45:07 ] デバッグってどうやってます? emacsに慣れちゃってるんで,Meadowのgud-modeで pdbを動かしたいんだけど,新規バッファに何も表示されず "q"で終了するとした時に,今まで溜まってたのが表示される・・・ WinPdbは使いにくいんだよなぁ・・・
229 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 03:19:59 ] PyScripter
230 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 04:00:09 ] すいませんlinuxなんです
231 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 07:34:41 ] eclipse + pyDevじゃだめ?
232 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 11:17:13 ] すいませんlinuxなんです
233 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 11:41:00 ] emacsじゃだめ?
234 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 11:47:01 ] >>232 linuxでeclipse動くだろw
235 名前:デフォルトの名無しさん [2008/10/05(日) 12:03:50 ] すいませんlinuxなんです
236 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 12:07:55 ] あやしい部分で print すればいいよ。
237 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 12:20:29 ] すいませんlinuxなんです
238 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 12:35:28 ] すいませんほんとうはrubyなんです
239 名前:228 [2008/10/05(日) 13:25:39 ] 皆さんアドバイスありがとうございます! >>229 これはすごいIDEですね! こんなものがフリーで使えるとは・・・Python恐るべし!! もう少し頑張ってみて,どうしようもなかったら乗り換えを検討します. >>230 VMware上で試したんですけど,linuxのemacsだと問題ないんですよね〜 >>231 結構,定番っぽいですね >>236 それならWinPDBの方がいいかなぁ ちょっとググってみたら,NTEmacsで 同じ現象に陥っている人を発見! ttp://mail.python.org/pipermail/python-mode/2005-January/000236.html でも,特に情報なし・・・ バックグラウンドでpdbが動いていることは確かで 新規バッファに表示されないだけなので もう少し調べてみようと思います.
240 名前:228 [2008/10/05(日) 13:33:09 ] >>238 スレチですが,rubyも本家で配布しているelispでは Meadowでrubydbが使えません. ドライブ文字を含むパスを通すように,rubydb3x.elを修正する必要があります. Meadowは少数派なのかなぁ・・・
241 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 14:18:08 ] python 2.6 がリリースされていますが、 Psyco 1.6 は動作しますでしょうか? 本家にあるWindows用は2.5向けしかないようです。
242 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 14:22:06 ] >>241 一般にCで実装されていてコンパイルが必要なライブラリのバイナリ配布物は メジャーバージョンが違えば*全て*使えない ソースからコンパイルすれば使える*可能性*はあるが、公式にサポートが 表明されていないなら、全て自己責任の世界
243 名前:241 mailto:sage [2008/10/05(日) 14:54:41 ] >>242 ありがとうございます。 これから使ってみようと考えている初心者なんで、素直に2.6用のがでてくるのを待ちたいと思います。
244 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 17:37:40 ] 使ってみてエラー吐くか試すぐらいしてもいいんじゃね でもpsycoで高速化される場面は限られるよ