- 1 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:45:30 ]
- 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/1230821097/
- 417 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 05:39:24 ]
- あかん・・・ユニコードリテラルをちゃんと扱えるようになったところで、
print 'あ' が普通に化けるんじゃ本末転倒だなあ。
- 418 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 10:37:01 ]
- >>417
from __future__ import unicode_literals これで全部解決
- 419 名前:デフォルトの名無しさん [2009/03/15(日) 10:51:01 ]
- 「,」と「%」の記号を16進数にエスケープしたいのですが
re.subを使って置換する方法はありますか? 例 (1) 'A is 20%, B is 80%' (2) 'A is 20%25%2c B is 80%25' (1)を(2)に変換したい。 次のコードでは「\1」は通常の文字列ではないのでうまく動作しない。 import re txt = 'A is 20%, B is 80%' print re.sub('([,%])', '%02x' % (ord(r'\1')), txt)
- 420 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 11:11:14 ]
- >>419
re.sub('([,%])', lambda m: '%02x' % ord(m.group(1)), txt)
- 421 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 11:18:06 ]
- >>419
urllib.quote(txt)
- 422 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 11:46:15 ]
- >>418
んだな。~/_ipython/ipy_user_conf.pyのmain関数の最後に、 o.autoexec.append('from __future__ import unicode_literals') を追加。 2> 'あ' <2> u'\u3042' 3> u'あ' <3> u'\u3042' 4> print 'あ' -------------->print('あ') あ
- 423 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 12:06:10 ]
- 416のarg_sのユニコード化がエラーになるので削除。
unicode()にユニコード食わせるとユニコードのままにならなかったっけ・・・? で、デフォルトエンコーディングはcp932かmbcsにしとく必要があるようだ
- 424 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 12:25:42 ]
- >>423
unicode() の第一引数が unicode オブジェクトの場合は、第二引数があると エラーになる。 if not isinstance(arg_s, unicode): unicode(arg_s, 'utf-8')
- 425 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 13:21:20 ]
- >>424
なるほど。isinstance()しとくしかないようだなぁ。 というかunicode_literalsのためだけに2.6にあげたよ!あげたよ!
- 426 名前:デフォルトの名無しさん [2009/03/15(日) 13:27:29 ]
- >>420,421
ありがとう。 re.sub('([,%])', lambda m: '%%%02x' % ord(m.group(1)), txt) 第二項目が関数だと、Matchオブジェクトを引数にして呼び出されるのか。 urllib.quote(txt) 確かにこの方が簡単ですね。 ただ今回はファイルの後方互換性が必要で、 エスケープするのは記号2種類だけにしたいので とりあえず文字列置換を使うつもりです。
- 427 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 13:45:03 ]
- txt.replace('%', '%25').replace(',', '%2c')
じゃいかんの?
- 428 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 15:48:38 ]
- >>427
Ruby使う事にしたので問題ないです。
- 429 名前:デフォルトの名無しさん [2009/03/15(日) 21:33:17 ]
- >>427
今回の場合はそれで十分ですね。 実はPerlのコードを参考に作っているんだけど Pythonでもコンパイルとかなしで出来るのか知りたかったので 「re.sub」で聞いてみました。
- 430 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 21:47:25 ]
- パイソンのRadツールって何があります?
- 431 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 23:12:03 ]
- Rubyですかね。
- 432 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 01:08:07 ]
- よくわからんが、エンコーディングの設定が間違ってるでFA?
- 433 名前:430 mailto:sage [2009/03/16(月) 01:24:58 ]
- Rubyにしてみます。
- 434 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 02:31:18 ]
- あるある
- 435 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 02:42:22 ]
- こうしたRuby厨の工作によりまともな人はRubyを嫌うのであった
- 436 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 03:30:38 ]
- てかruby厨ってrubyしか使ったことないかあるいは使えないんでひたすら布教するんだろうな
複数の言語を使いこなせないとは哀れな
- 437 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 03:31:47 ]
- どこの世界に>>431みたいな布教をする奴がいるんだw
- 438 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 04:34:45 ]
- もともとはそういう奴らがいたから、現在そういうネタになってるんだよw
- 439 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 04:41:44 ]
- パールときてルビーときて。
次はどんな宝石だい?
- 440 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 05:00:24 ]
- 満を持してダイヤモ
- 441 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 05:08:34 ]
- ・・・花崗岩とか?
- 442 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 10:53:24 ]
- トルコ石まで続くかもなw
- 443 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 14:34:47 ]
- ttp://sankei.jp.msn.com/science/science/081027/scn0810271031004-n1.htm
ttp://sankei.jp.msn.com/science/science/081110/scn0811101543000-n1.htm ttp://sankei.jp.msn.com/science/science/090112/scn0901121402003-n1.htm 宝石の条件の一つには硬度が高いことも重要である。 これは、硬度が低い鉱物の場合、経年による砂埃(環境に遍在する石英など)による風化・劣化のために、 観賞価値が失われてしまうためである。 例としてダイヤモンドはモース硬度10、ルビー・サファイアはモース硬度9である。 石英のモース硬度は7であり、これらの宝石の硬度は石英のそれより高いことに注意されたい (オパールなどは例外的に硬度が低い)。 硬度以外の条件として色彩、透明度、希少性など鑑賞的価値・財産的価値・所有の欲求を満たす性質が重要である。
- 444 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 12:11:42 ]
- >>411
2年前なら確実に買っただろうけどな。
- 445 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 14:29:19 ]
- reprって何て読むのでしょうか?
また、名前の由来は何でしょうか?
- 446 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 14:39:50 ]
- representかな?
- 447 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 14:41:24 ]
- れぷると読んでいる
representだと思っている 俺はな
- 448 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 15:13:35 ]
- representation、表現
マニュアルを嫁 repr(object) Return a string containing a printable representation of an object. (...)
- 449 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 17:46:09 ]
- >446-448
ありがとうございます マニュアルは和訳しか呼んだことがなくて気付きませんでした…
- 450 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 01:31:58 ]
- マニュアル読まないと分からない言語って糞じゃないですか?
- 451 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 01:39:19 ]
- そりゃマニュアル読まずとも理解できればそれにこしたことはないけど、
開発言語くらいの規模だとマニュアルなしでは非常に厳しい。 マニュアル読まずとも習得できる言語ってHQ9+とかのジョーク言語くらいじゃない?
- 452 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 02:19:35 ]
- IPython使ってるなら ? 付けるだけ。
In [10]: repr? Type: builtin_function_or_method Base Class: <type 'builtin_function_or_method'> String Form: <built-in function repr> Namespace: Python builtin Docstring: repr(object) -> string Return the canonical string representation of the object. For most object types, eval(repr(object)) == object.
- 453 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 03:01:26 ]
- >>> help(repr)
Help on built-in function repr in module __builtin__: repr(...) repr(object) -> string Return the canonical string representation of the object. For most object types, eval(repr(object)) == object.
- 454 名前:デフォルトの名無しさん mailto:sage [2009/03/18(水) 23:20:58 ]
- わかるよ、習うより慣れろってことね。わかります。
だけど、マニュアル見た方が良い場合もある。 バージョンによる文法の違いとか、 他の言語を使ったことがあるけど、pythonに移行したい場合。 help方式は、そもそも、索引する単語が分かっている場合にしか使えない。
- 455 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 00:41:47 ]
- scipyのバイナリは
SSEがサポートされて無いと使えないんですか?
- 456 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 00:55:06 ]
- そういう質問してる時点で駄目だと思う
- 457 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 01:06:30 ]
- んー
CPUがSSE3をサポートして無いといって中断するんだよな。 WinでのbuildについてはOfficialにマニュアルもないし… ATLASとBLAS入れてMinGWでeasy_installか?
- 458 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 09:14:01 ]
- Rubyしかないな
- 459 名前:デフォルトの名無しさん [2009/03/19(木) 18:08:57 ]
- Cythonって既にpython3に対応してるんだな。
lxmlがpython3に対応したというのを見て初めて知った。
- 460 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 02:04:44 ]
- パイソン学び始めて1日目ですが
数当てゲームの作り方を ヒントだけでいいので教えてください。
- 461 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 02:34:33 ]
- 数当てゲームでググる
- 462 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 02:55:17 ]
- そのぐらい自分で考えてフローチャートでも書いてみれ
- 463 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 03:41:11 ]
- うおお
頭がパンクしそうだ
- 464 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 04:20:42 ]
- >>460
import random while(True): print '0-9? ', print 'ok' if int(raw_input()) == int(random.random() * 10) else 'bad'
- 465 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 04:23:25 ]
- >>464
なんか見たこと無い構文がいっぱいorz プログラミングって難しいですね・・・
- 466 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 04:48:52 ]
- int(random.random()*10)
よりは random.choice(range(0, 10)) のほうがよくね?
- 467 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 05:04:26 ]
- random.randint(0, 9)
- 468 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 05:53:35 ]
- >>466-467
ありがとうございます 勉強になります
- 469 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 05:55:10 ]
- 毎回乱数発行してたら0〜9まで10回入力しても当たらんケースがあるのかw
- 470 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 06:01:14 ]
- 分かってるとは思うけど各回の期待値は1/10だから
10回連続で外れる確率は0.9**9で35%くらいある 逆に乱数一回だけ発行だと10回以内で確実に当たる
- 471 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 08:44:10 ]
- 35%もあるのか
- 472 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 10:12:05 ]
- そんなことよりエロゲつくってくださいよぉ
- 473 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 10:16:37 ]
- 了解
- 474 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 10:39:39 ]
- 音ゲー作ろうかと思ったけどMIDIわかんえ
- 475 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 12:33:21 ]
- ttp://www13.plala.or.jp/kymats/study/MULTIMEDIA/mciCommand_midi.html
ttp://www13.plala.or.jp/kymats/study/MULTIMEDIA/waveOut_create.html ttp://www13.plala.or.jp/kymats/study/MULTIMEDIA/mciCommand_play.html
- 476 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 17:05:58 ]
- 2.6 と 2.5 の共存はどうやるのがいいんでしょうか?
窓環境で ctypes で dll にアクセスする用途で 2.6を 入れたはいいものの、環境変数の設定を 2.5 -> 2.6と 設定し直す手間がとても面倒なんです…
- 477 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 17:39:23 ]
- そうだね
- 478 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 19:58:48 ]
- 3もでてるのに何で今更2.6が使いたいの?
モジュールの対応状況ならまだ2.5が最良だろ?
- 479 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 20:01:37 ]
- >>478
3はまだ先行者による地雷発掘中だから一般人は使っちゃダメ。 2.6 に移行して from __future__ しまくるのがベスト。
- 480 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 23:37:35 ]
- とか言ってる割には
今から使い始めるには3からが良いよ ってのを良く見るんだが… まぁ、バグ出しの問題と 仕様変更による混乱回避の問題は別物だけど 使っちゃ駄目ってのもおかしな話だ だったらリリースすんなよって言われても仕方ない
- 481 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 23:53:31 ]
- >>今から使い始めるには3からが良いよ
言ってねーよ。少なくとも2chでは…
- 482 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 00:10:39 ]
- ruby1.9のがはるかに先をすすんでいる。
- 483 名前:デフォルトの名無しさん [2009/03/22(日) 00:12:09 ]
- >>482
それは絶対にないwww
- 484 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 00:38:56 ]
- ipython 重すぎね?
何をそんなにがりがり読み込んでんだよ
- 485 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 00:45:05 ]
- レジストリ
- 486 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 00:54:09 ]
- それ古いんじゃね
今ならjython使え
- 487 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 00:57:28 ]
- Duron600Mhz, mem 256MBなPCを買い換えろよ
- 488 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 14:19:00 ]
- >>476
d.hatena.ne.jp/walf443/20090322/1237692764 2.5系を環境変数に登録しといて 2.6系, 2.7系, 3.0系, 3.1系を呼び出すような スクリプトを書いて > python distributed.py test_script.py みたいに呼び出せればいいじゃないか、とか 思いつくもののどう書いたらよいか思い付かず(沈
- 489 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 15:42:09 ]
- 環境変数ってbinフォルダへのパスだったの?
それならバッチ書いてパスの通ったとこに置いとけばいいよ python3.1.bat c:\Python31\bin\python.exe みたいなので ほかの環境変数もいじれるよ
- 490 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 15:58:42 ]
- 俺は単にexeの名前変えてる
python25.exeとかpython26.exeとか で、両方のbin/を環境変数に登録しとけば いちいち環境変数弄らんでも、いつでも好きなほうを使えるよ
- 491 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 16:30:20 ]
- 数当てスクリプト作ってるんですけど、
乱数を一回だけ発行するにはどうすりゃいいんでしょうか・・・?
- 492 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 16:31:49 ]
- >>491
一回だけ生成すればいいだけだろ 意味が分からん
- 493 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 16:32:04 ]
- そのくらいぐぐろうよ・・・
Python 乱数 で一発だよ
- 494 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 16:46:22 ]
- ぐぐってもよくわかりません
- 495 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 17:01:26 ]
- while(True):
print'1-9?' if int (raw_input())==random.randint(1,9): print 'ok' else: print'bad' これで合ってます?
- 496 名前:デフォルトの名無しさん [2009/03/22(日) 17:04:47 ]
- >>491
import time;time.clock()
- 497 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 17:08:06 ]
- >>495
まちがってます。ヒントは型。
- 498 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 22:43:45 ]
- >495
ループに入る前に生成して変数に
- 499 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 06:08:06 ]
- >>495
みんなのPythonから始めたほうがいいと思う www.amazon.co.jp/みんなのPython-柴田-淳/dp/479733665X
- 500 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 06:25:16 ]
- ミス
www.amazon.co.jp/gp/product/479733665X
- 501 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 14:17:27 ]
- いやいや、分厚い初めてのPythonで挫折しようぜ
- 502 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 18:31:06 ]
- 漏れはdoskeyだね。
doskey py26=c:\python26\bin\python $* doskey py31=c:\python31\bin\python $* とかバッチファイルに書いて、 cmd.exe /k, c:\util\setdos.bat とかショートカット作ってこれを実行するようにしてる。
- 503 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 11:03:28 ]
- >>484
IPython 0.9.1 + Python 2.6.1 の環境で、 Sets の Warning 出している部分を #import Sets Sets = sets と書き直してやったら早くなった気がする。
- 504 名前:503 mailto:sage [2009/03/24(火) 11:15:53 ]
- やっぱりあまり変わらないかも…
どっちも1秒で起動する。
- 505 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 15:21:00 ]
- ヤマタノ
- 506 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 15:30:54 ]
- ダルに代わったときはどうなることかと思った
- 507 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 16:22:43 ]
- すいません、質問です。
関数内で構造体に値を入れまくって、関数抜けた後 次の関数でその値を参照する。と言う感じのことをやるにはどうしたらよいでしょうか? クラスメンバに代入する方法で書いてみたのですが、 なんか上手くいきませんorz 説明下手ですいません(´Д`;
- 508 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 17:01:17 ]
- 構造体って何?
- 509 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 17:10:34 ]
- class foo: pass
x = foo() x.y = 1 x.s = 'abc' x.b = True これって構造体っぽい物ですか?
- 510 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 17:31:14 ]
- 動的にメンバ変数を増やせるメリットがいまだに分からない
- 511 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 17:45:20 ]
- >>507っす。
すいません、色々試してたら自己完結しました。 引数とかでエラー出てると思ってたら、配列指定のトコでこけてましたorz 修正前:print frm.name 修正後:print frm[0].name イラネーYO、と言われそうですが、 色々試してたソース張ってみます。
- 512 名前:507 mailto:sage [2009/03/25(水) 17:46:35 ]
- class Frame:
def __init__(self,name,len): self.name = name self.len = len def func_in(frm): frm.append(\ Frame( name = "sigA",\ len = 32\ )) def func_out(frm): print frm[0].name print frm[0].len frm=list() func_in(frm) func_out(frm)
- 513 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 17:46:35 ]
- イラネーYO
- 514 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 17:46:59 ]
- イラネーYO
- 515 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 19:15:31 ]
- >>510
わざわざ新しいクラス作らなくても済む
- 516 名前:デフォルトの名無しさん [2009/03/28(土) 00:55:11 ]
- morepypy.blogspot.com/2009/03/vm-summit-nice-to-see-friendly.html
これは期待していいのか?
- 517 名前:デフォルトの名無しさん [2009/03/28(土) 02:33:12 ]
- 構造体の代わりだったら辞書で十分でないの?
|

|