1 名前:デフォルトの名無しさん mailto:sage [2009/01/01(木) 23:44:57 ] 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/1226830195/
2 名前:デフォルトの名無しさん mailto:sage [2009/01/01(木) 23:46:20 ] ┌──────────────────┐ | | │ _ ∩ | │ ( ゚∀゚)彡 おっぱい! | │ ( ⊂彡 おっぱい! .| │ | | | │ し ⌒J | │ | │ Now Oppaing. .... .| │ | │ そのままおっぱいでお待ちください。 | | | └──────────────────┘
3 名前:デフォルトの名無しさん [2009/01/02(金) 00:06:47 ] ペニス
4 名前:デフォルトの名無しさん mailto:sage [2009/01/02(金) 00:14:20 ] >>1 おつぱいそん
5 名前:!omikuji !dama mailto:sage [2009/01/02(金) 05:14:01 ] 乙py
6 名前:初心者 mailto:sage [2009/01/02(金) 08:55:53 ] パイパン初心者です。こんなスレがあるなんて今日初めて知りました。
7 名前:初心者 mailto:sage [2009/01/02(金) 13:50:22 ] Rubyこそが史上最強の言語であると思ってますが、パイパンがんばります!
8 名前:デフォルトの名無しさん mailto:sage [2009/01/02(金) 17:00:37 ] >>7 そうだね、ハルマゲドンはすぐそこまで来ているよね。
9 名前:デフォルトの名無しさん mailto:sage [2009/01/02(金) 17:37:39 ] またruby厨の自演がはじまった
10 名前:デフォルトの名無しさん mailto:sage [2009/01/02(金) 18:29:45 ] >>1 おっぱいそん!
11 名前:デフォルトの名無しさん mailto:sage [2009/01/02(金) 21:24:05 ] >>1 π乙
12 名前:デフォルトの名無しさん mailto:sage [2009/01/02(金) 21:41:13 ] 刑務所でも使えるRubyに感謝
13 名前:デフォルトの名無しさん mailto:sage [2009/01/02(金) 22:52:59 ] だれか、pythonのスクリプトを難読化する ツールを僕に紹介してちょんまげ
14 名前:デフォルトの名無しさん mailto:sage [2009/01/02(金) 23:12:04 ] 誰もお前の糞なスクリプトなんて読まないから安心汁
15 名前:デフォルトの名無しさん mailto:sage [2009/01/02(金) 23:46:31 ] つ perl
16 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 00:25:01 ] つ Grass
17 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 01:17:47 ] .pyc
18 名前:デフォルトの名無しさん [2009/01/03(土) 02:09:00 ] python -m py_compile python -m compileall 何か面倒な事をしたいのなら、 def encode_src(src): print("""exec '''%s'''.decode('base64')""" % src.encode('base64')) encode/decodeは必要に応じてcompile,marshal他を組み合わせる。
19 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 02:12:42 ] >>18 の訂正 execも関数になるんだっけ。exec -> exec(...)
20 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 02:24:15 ] 他に、codec使う方法もある。 # -*- coding: rot13 -*- cevag('Uryyb, jbeyq!')
21 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 04:05:31 ] >>> class a: ... hoge=2 ... def hage(self, x): ... self.hoge=x ... def fuga(self, y): ... return self.hoge ... >>> vars()['a'].__dict__ {'__module__': '__main__', 'fuga': <function fuga at 0x00930DF0>, 'hage': <funct ion hage at 0x00930CF0>, '__doc__': None, 'hoge': 2} >>> vars()['a'].hoge 2 >>> vars()['a'].__dict__['hoge'] 2 >>> i=vars()['a'] >>> i.fuga(0) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unbound method fuga() must be called with a instance as first argumen t (got int instance instead) >>> i=vars()['a']() >>> i.fuga(0) 2 >>> i=vars()['a'] >>> j=i() >>> j.hoge 2 >>> j.fuga(0) 2 >>> j.__dict__ {} 生成されたインスタンスからメンバやメソッド情報を得るにはどうすればよいですか
22 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 05:18:43 ] j.__class__.__dict__
23 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 07:51:16 ] dir inspect.getmembers
24 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 08:03:27 ] __class__.__dict__ にある関数はインスタンスと関連付けされてない点に注意。 a.__dict__['fuga'](j, 0) # 引数 self にあたる部分を自分で渡す必要がある 恐らくやりたいことは、dir(instance) で調べて、getattr(j, 'fuga')(0)
25 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 08:42:00 ] dir だと余計なメンバも混ざってくる。 __class__.__dict__だと親クラスの情報が含まれない。 メソッドのみを調べる場合は、 [name for name,boundmethod in inspect.getmembers(instance, inspect.ismethod)] メンバを含める場合は第二引数を省略。 [name for name,boundmethod in inspect.getmembers(instance) if not name.startswith('__') and not name.endswith('__')]
26 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 09:13:18 ] >>> j.__class__.__dict__['hoge'] 2 >>> j.__class__.__dict__['fuga'](0) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: fuga() takes exactly 2 arguments (1 given) >>> j.__class__.__dict__['fuga'](j, 0) 2 >>> j.hoge=9 >>> j.__class__.__dict__['fuga'](j, 0) 9 できました ありがとうございました もっと勉強してみます
27 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 09:31:48 ] >>> class b(a): ... hige=3 ... def fuga(self, x): ... return self.hoge + x >>> class a: ... hoge=2 ... def hage(self, x): ... self.hoge=x >>> aa=a() >>> bb=b() >>> aa.__class__.__dict__ {'__module__': '__main__', '__doc__': None, 'hage': <function hage at 0x00930D70>, 'hoge': 2} >>> bb.__class__.__dict__ {'__module__': '__main__', 'fuga': <function fuga at 0x00930D30>, 'hige': 3, '__doc__': None} >>> dir(aa) ['__doc__', '__module__', 'hage', 'hoge'] >>> dir(bb) ['__doc__', '__module__', 'fuga', 'hage', 'hige', 'hoge'] >>> import inspect >>> inspect.getmembers(aa) [('__doc__', None), ('__module__', '__main__'), ('hage', <bound method a.hage of <__main__.a instance at 0x00934738>>), ('hoge', 2)] >>> inspect.getmembers(bb) [('__doc__', None), ('__module__', '__main__'), ('fuga', <bound method b.fuga of <__main__.b instance at 0x009347B0>>), ('hage', <bound method b.hage of <__main__.b instance at 0x009347B0>>), ('hige', 3), ('hoge', 2)] >>> [name for name,boundmethod in inspect.getmembers(aa, inspect.ismethod)] ['hage'] >>> [name for name,boundmethod in inspect.getmembers(bb, inspect.ismethod)] ['fuga', 'hage'] >>> [name for name,boundmethod in inspect.getmembers(aa) if not name.startswith('__') and not name.endswith('__')] ['hage', 'hoge'] >>> [name for name,boundmethod in inspect.getmembers(bb) if not name.startswith('__') and not name.endswith('__')] ['fuga', 'hage', 'hige', 'hoge']
28 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 12:20:06 ] もしかしてpythonのソースをYAMLだけで書いて exec使わずに実行とか出来るんですか
29 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 18:02:59 ] >>28 exec使わずに実行て? 普通、言語のインスペクトではメソッドの中身とか取れないのが普通。 JavaScriptはソースが見れたっけ? Pythonでの話に戻すけど、ソースコードをparserモジュールで構文木にして、 その構文木をソースとして実行とかできるのかな。やってみたことないけど。
30 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 18:10:04 ] rubyなら出来ますよ
31 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 18:12:40 ] そうだね、神の名はエホバだね。
32 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 19:02:45 ] はあ?
33 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 21:37:30 ] 今、下記のようなリストがあり、 list1 = ['cat', 'dog', 'spam', 'egg'] 下のマップで上記リストを変換したいと思います。 maps = {'animal': ['cat', 'dog']} 結果は以下を期待しています。 ['animal', 'animal', 'spam', 'egg'](あるいは、set(['animal', 'spam', 'egg']) その際、安直に上記を実装した、下のようなコードが思いつきました。 下のコードをmap関数やセット、lambda関数などなんでもいいので標準関数等を駆使して、とにかく短く表現できないか考えています。下記のコードはスマートな方でしょうか? ans = [] for elem in list1: for key, vals in maps.items(): if elem in vals: ans.append(key) else: ans.append(elem) print ans さらに、マップの要素が増えた場合、 maps = {'animal': ['cat', 'dog'],'food':['egg']} 他に、list1 = ['animal', 'spam', 'egg'] をもとにmaps = {'animal': ['cat', 'dog']}を用いて、元が復元できないか考えています。 >> ['cat','dog','spam', 'egg'] どなたかわかりますでしょうか?
34 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 21:39:01 ] 改行がくずれたので、、、 ans = [] for elem in list1: for key, vals in maps.items(): if elem in vals: ans.append(key) else: ans.append(elem) print ans
35 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 21:50:26 ] >>33 変換したい方向とmapsのデータの持ち方が逆なので意図がちょっと分かりにくかった list1 = ['cat', 'dog', 'spam', 'egg'] maps = {'animal': ['cat', 'dog']} reverse_maps = dict((x, key) for key, xs in maps.iteritems() for x in xs) print [ reverse_maps.get(x) or x for x in list1 ] こういうことでいいのかな?
36 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 22:08:25 ] >>35 やばい。目から鱗どころじゃないっす。。 マップをつくるなんて、、。 しかも、以前valuesだったものをkeyにして、、なんて思いも浮かばなかった。 ありがとうございます! しかし、実質1行とは。。予想以上でした。 これより最短はないですね。 ありがとうございます!
37 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 22:29:30 ] def foo(l, i, k): l[i] = k for k, v in maps.items(): for w in v: if list1.count(w): foo(list1, list1.index(w), k) print(list1) for k, v in maps.items(): for w in v: if list1.count(k): foo(list1, list1.index(k), w) print(list1) 初心者なので腕試しのつもりで書きました かなり行数使ってますが
38 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 22:30:11 ] >>35 コードもらいました これで逆変換 list1 = ["cat", "dog", "spam", "egg"] maps = {"animal": ["cat", "dog"]} transpose = lambda mps: dict((x, key) for key, xs in maps.iteritems() for x in xs) transform = lambda lst, mps: [item in mps.keys() and mps[item] or item for item in lst] itransform = lambda lst, mps: sum([item in mps.keys() and mps[item] or [item] for item in lst], []) #>>> import trans #>>> m = trans.transpose(trans.maps) ##>>> trans.transform(trans.list1, m) #['animal', 'animal', 'spam', 'egg'] #>>> s = set(trans.transform(trans.list1, m)) #>>> trans.itransform(trans.list1, trans.maps) #['cat', 'dog', 'spam', 'egg']
39 名前:37 mailto:sage [2009/01/03(土) 22:31:06 ] 一行で書けるのか 代入せずに新しくリストを作ればいいのか 勉強になるなあ
40 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 22:34:06 ] ああー 最後はtrans.list1じゃなくてs
41 名前:38 mailto:sage [2009/01/03(土) 22:38:56 ] transpose関数ももmapsではなくmpsですねサーセン
42 名前:37 mailto:sage [2009/01/03(土) 22:41:40 ] カウントとか効率悪そうだし foo関数定義した意味がわからないな 駄コード書いて反省してます すみませんでした
43 名前:37 mailto:sage [2009/01/03(土) 22:59:21 ] ちょっと増やすだけで破綻するし 駄目すぎるな
44 名前:デフォルトの名無しさん mailto:sage [2009/01/03(土) 23:28:11 ] setでよかったのか 考えて損した 一から勉強し直そう
45 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 01:04:26 ] >>27 細かいとこだけど。それだと class b(a) の後に class a を定義しているので 偶然前に定義した class a が残っていただけで、意図したテストになっていないはず。 後、クラス名はなるべく頭に大文字を使おう。 hige, hoge はクラス変数になっているので、 fuga をインスタンス作らずに呼び出したいなら、@classmethod インスタンス変数にしたい場合コンストラクタ(__init__メソッド)内でhige,hogeを作る。
46 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 01:49:36 ] なんぞこれ
47 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 02:56:38 ] >>29 JavaScriptは実装依存じゃないかな。toSourceとかunevalがあったよーな気がする。 Pythonだとinspect.getsoruce >構文木をソースとして実行 構文木もコンパイルしたコードオブジェクトも実行可能。ただ、実行には結局exec/evalを使うので 構文木を弄るのでなければわざわざ変換する利点はない。see also compiler.ast, ast.parse 少し敷居は高いけど、Pythonはこの辺の標準モジュールは充実してる。 >>28 "exec を使わずに"がどういう意図なのかわからないけど、 単に字面通りなら、じゃあevalで?って話しだし。 副作用を気にしていて実行環境を分離したいのなら >>> d = {'a': 1} >>> exec "a = 10" in d >>> d['a'] 10 より確実にするなら、別プロセス立ち上げてsocketやpipe等で -> Rpyc等のライブラリを使う。 ところで、YAML内にPythonのソース書くって インデントがどっちの言語のものか混ざって解らなくなったりしない? (書いたことないけど
48 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 03:22:53 ] >>38 item in maps.keys() は、item in maps の方が推奨されてる。 でも、この場面なら get メソッドの第2引数を使う方がいい。 item in maps.keys() and maps[item] or item -> maps.get(item, item)
49 名前:38 mailto:sage [2009/01/04(日) 03:32:08 ] >>38 ありがとう 知りませんでした
50 名前:38 mailto:sage [2009/01/04(日) 03:33:58 ] ああー >>48 ですー
51 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 03:51:01 ] 効率無視 && mapsのkeysと各要素間に重複がない場合限定で。 mapsをtransposeせずに探索。見つかってもまだ探索・・・。 [reduce(lambda x,(y,z): y if x in z else x, maps.iteritems(), i) for i in list1]
52 名前:デフォルトの名無しさん [2009/01/04(日) 05:41:17 ] くだらないコードばっかだな
53 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 10:28:37 ] 掲示板作ったよ。 なんかホールとか発見したら教えてね。 しばらくしたら忘れてね。 rail.s4.pf-x.net/bbs/
54 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 11:54:39 ] 161さんごぶさたです
55 名前:デフォルトの名無しさん [2009/01/04(日) 13:01:07 ] a = ( {'a':'b'} ) for row in a: print row これだと、{'a','b'}でなく、'a'が表示されます。 a = ( {'a':'b'}, ) これだと、ちゃんと{'a':'b'}と表示されます。 これは何故でしょうか?
56 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 13:09:38 ] pythonでは1要素のタプルを記述するには (x,)のように末尾のカンマが要るんだよ >>> (1+2)*3 9 >>> (1+2,)*3 (3, 3, 3) 上の式のカッコがタプルだと思われても困るだろう?
57 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 13:18:48 ] なるほど ありがとうございました
58 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 14:21:36 ] a = ({'a':'b'})*3 print a a = ({'a':'b'},)*3 print a
59 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 15:38:05 ] >>5 for i in dict は、for i in dict.keys()と同じだから。
60 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 16:43:35 ] ┏━━━━━━━━━━━━━━━━━━━━━┓ ┃ ━ ╋━╋ ╋┓┏┓ ┳┻┳┏━ ┣━┳━ ┃ ┃ ━ ┏┳┓ ┃┃┗┛ ┻━┻┃ ┃ ┃ ┃ ┃ ━ ┗╋┛ ┏━┓ ┃ ┣┳ ┏━╋━ ┃ ┃ ━ ━╋━ ┣━┫ ━╋━┃┃ ┃ ┃ ┃ ┃┏┓━╋━ ┣━┫ ┏╋┓┃┃ ━┻━╋━ ┃ ┃┃┃ ┃ ┗━┛ ┃┃┃┃┃ ┃ ┃ ┃┗┛━┻━ ━┛┗━ ┃┃┃┃┃ ┃ ┃ ┗━━━━━━━━━━━━━━━━━━━━━┛ ∩ 〈〈〈 ヽ 〈⊃ } (\___/) | | ( ̄l▼  ̄)! ! / ● ● | / / l ___\lミ/ /▲ ( 。--。 ) /■___ (( ̄)) 新年あけましておめでとうございますーーっ! (___)  ̄/ 2009年 元旦
61 名前:デフォルトの名無しさん [2009/01/04(日) 17:06:59 ] >>59 嘘をかかないでください。for item in {'a':'b'}: は、'a':'b'を取り出した後自動的に'a'に加工してくれるんです
62 名前:デフォルトの名無しさん [2009/01/04(日) 19:39:07 ] pythonのソースコードをsjisで書いても問題ないでしょうか? 日本語はu"ほげ"で書くので、 他言語で発生するような文字化け問題は発生しないのではと思うのですが そのあたりどうでしょうか
63 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 19:43:58 ] 俺はいつもsjisで書いてるよ。
64 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 19:54:22 ] for item in dict と for item in dict.keys() が同じになるのは、正確には 3.0 から。 2.x では dict.keys()はキーのリストを作って返すので、同じになるのは dict.iterkeys()。 でも >>61 は解らない。バイトコードで?それともC関数内で? 自動的に加工してくれるという根拠とかどこにあるのか、よければ教えてください。
65 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 19:57:14 ] サブクラスがオヤクラスの名前を知るにはどうすればいいのでしょうか? class Tuple3: def __init__(self, arg): if isinstance(arg, Tuple3): print 'ok' else: print 'ng' class Vector3(Tuple3): def __init__(self, arg): Tuple3.__init__(self, arg) と、あったとき、 vec = Vector3() --> 'ng' vec2 = Vector3(vec) とやった時、'ok'と表示させる事はできますか? 親クラスコンストラクタで、isinstance(arg, Vector3)と直接書けばいいのはわかるのですが、 このやり方はしたくありません。 そんな事は可能ですか?
66 名前:デフォルトの名無しさん [2009/01/04(日) 20:01:21 ] 必要なくね?
67 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 20:10:57 ] >>62 自分ひとりで同一環境で書いてる間は特に問題ない。 ブラウザからsvnレポジトリ内のソースを読む時、等 他のいろんな所とのやりとりを想定すると ソース内には極力日本語を書かないようにするかutf-8に統一が無難。
68 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 20:31:54 ] >>65 どういう用途なのかわからないけど、使えそうなものをとりあえず列挙すると issubclass Vector3.__bases__
69 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 20:35:36 ] class Tuple3: def __init__(self, arg): if isinstance(arg, Tuple3): print 'ok' else: print 'ng' これは class Tuple3: def __init__(self, arg): if self.__class is Tuple3: print 'ok' else: print 'ng' がいいんだろう
70 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 20:58:24 ] main.py /hoge/ - __init__.py - test.py をmain.py内で、 import hoge した場合、test.pyはimportされないのですか?
71 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 21:05:05 ] 何に使うのかまだ解ってないけど、 やりたい事ってもしかして、コレ? class Tuple3: def __init__(self, arg=None): if isinstance(arg, self.__class__): print "ok" else: print "ng"
72 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 21:06:47 ] >>70 パッケージは、__init__.py内で明示的にimportしない限り、 import hogeでimportされるのは hoge/__init__.pyのみ。
73 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 23:21:00 ] import hoge.test
74 名前:デフォルトの名無しさん mailto:sage [2009/01/04(日) 23:44:04 ] 馬鹿ばっかり、ってことが証明されたなあ、このスレ。
75 名前:デフォルトの名無しさん [2009/01/04(日) 23:59:00 ] 馬鹿ばっかり、ってことが証明されたなあ、このスレ。
76 名前:デフォルトの名無しさん mailto:http://rail.s4.pf-x.net/bbs/ [2009/01/05(月) 00:58:39 ] 真面目にやれ
77 名前:デフォルトの名無しさん [2009/01/05(月) 00:59:54 ] 姑息なことすんな
78 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 01:02:07 ] くだすれの方が盛り上がってるな
79 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 01:24:52 ] sageないし草いし死ねば良いのに
80 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 01:48:12 ] 2chで死ねは挨拶みたいなもんだ罠
81 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 02:32:13 ] [ANN] PyYAML Python 3 対応 ---- yaml_make.py ---- import os, sys, yaml def make(target): makefile = os.path.join(os.getcwd(),'Makefile.yaml') exec (yaml.load(open(makefile))) in vars() if __name__ == '__main__': make(sys.argv[1]) ---- Makefile.yaml ---- hello: | print "Hello" test: | print "Test" PythonソースをYAML内に書くときのサンプル。 | がないと、関数・クラス定義する時に : が YAMLでの辞書のキー定義と解釈される。
82 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 09:40:31 ] そういうのは公式言ってみるからどうでもいいよ
83 名前:デフォルトの名無しさん [2009/01/06(火) 04:37:22 ] 15-20% average speedup on pybench and pystone bugs.python.org/issue4753
84 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 10:39:49 ] numpyはsageに吸収されてしまうのだろうか
85 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 23:22:47 ] 年明け首吊り失敗して顔酷いことなってるよ俺。首にアザできて外でれねえw
86 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 23:44:14 ] このご時世たくさん人をやとっちゃった会社は大変だね。 この状況で独立するバカは中央線を止めないようにね。
87 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 12:30:28 ] ま、会社が潰れるのは虚業だったことの証明なんだろうけどね。 年末が一つの山だったみたいだな。 次は年度末の3月が山だと思うよ。
88 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 12:39:13 ] コネない人間には虚業自体できないから 景気も関係ないんじゃないの
89 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 14:29:34 ] 有名なpythonistaって誰?
90 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 15:16:19 ] guido
91 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 15:37:57 ] >>90 それ神様
92 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 15:49:59 ] Eric Steven Raymond Peter Norvig
93 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 15:58:46 ] Matz
94 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 16:00:20 ] Ruby
95 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 19:36:53 ] >>93 ,94 もしかして: David Mertz と Sam Ruby
96 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 19:57:01 ] Tim Barners Lee
97 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 22:19:20 ] Matz
98 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 22:32:14 ] Notz
99 名前:デフォルトの名無しさん mailto:sage [2009/01/09(金) 13:05:18 ] 日本人では
100 名前:デフォルトの名無しさん mailto:sage [2009/01/09(金) 13:47:21 ] 俺
101 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 00:03:14 ] Jim Huguninは、pythonistaだと思う。
102 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 00:42:45 ] >>99 Matz
103 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 03:15:28 ] 西尾さん以外ありえないだろ。
104 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 04:22:41 ] 以下、Python系本の著者の話題が続くとさ
105 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 07:10:06 ] Esoteric Language みたいな本を opython で出す必要は ないよね
106 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 10:10:01 ] 西尾さん以外ありえないだろ。
107 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 10:15:06 ] 西尾さん以外ありえないだろ。
108 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 10:52:58 ] ttp://www.nishiohirokazu.org/blog/2007/02/grinedit_6.html
109 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 13:09:39 ] 西尾さんって誰?
110 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 14:21:09 ] 西尾さん以外アッーー!!
111 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 14:28:34 ] 彼のためを思ってやってるのかも知れないけど 一般的にこういうのは迷惑なものなんだよ>javajaの人
112 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 16:25:56 ] >>108 吹いた
113 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 17:28:00 ] >>109 d.hatena.ne.jp/nishiohirokazu/20090109
114 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 19:11:31 ] 知らね。 Matzと梶山民人(ninixの作者)なら知ってる。
115 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 20:32:09 ] いや、まて思い出した。 どう書く.orgなら知ってるのでそれ作った人か。
116 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 00:02:16 ] どう書く.org って Python で作られてたの?
117 名前:デフォルトの名無しさん [2009/01/11(日) 00:21:57 ] Pythonとかやってるやつが売国奴だ
118 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 00:26:07 ] どうせWindowsやLinux上で動かすしぃ
119 名前:FreeBSD mailto:sage [2009/01/11(日) 00:27:56 ] たまには思い出してやって下さい
120 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 00:32:38 ] 超漢字使え
121 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 12:47:00 ] sageなんてもんがあるのか 検索しにくい Pythonはじまったな
122 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 20:01:50 ] クラスのimport方法が分からん・・・ 今同じディレクトリに以下のPythonファイルがあるんですが、 いざ「driver.py」を実行しようとすると Traceback (most recent call last): File "hoge.py", line 5, in <module> obj = Hoge() TypeError: 'module' object is not callable ってエラーが出る。 import自体はうまく出来てるみたいなんだけど、インスタンスを作るところでエラーになってるのか・・・? 誰かPythonで自作クラスを作成&importするヒントをくださいorz 【Hoge.py】 1 #!/usr/bin/env python 2 # -*- coding: utf-8 -*- 3 4 class Hoge: 5 def __init__( self ): 6 print("HOGE") 7 【driver.py】 1 #!/usr/bin/env python 2 # -*- coding: utf-8 -*- 3 import Hoge 4 5 obj = Hoge()
123 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 20:04:06 ] >>122 【driver.py】 5 obj =Hoge.Hoge()
124 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 20:07:41 ] >>122 3 from Hoge import Hoge または 3 from Hoge import * 後者はおすすめしない
125 名前:122 mailto:sage [2009/01/11(日) 20:12:48 ] >>123 >>124 動いたあああああああああああああああああああああ ありがとう!! でも・・・これはどういうことなの・・・? HogeというパッケージにHogeクラスが属しているなら分かるんだけど、パッケージは作成せずに 同じディレクトリに二つのファイルを置いているだけなんだけど・・・ このあたりの動きってJavaとかPHPとはまったく別物?
126 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 20:37:21 ] >>125 Pythonにとって、パッケージ=ディレクトリ、モジュール=ファイルなの。 Hoge.py という名前のファイルなら、 Hoge というモジュールの中に、 Hoge という クラスができてた。
127 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 20:45:17 ] >>126 何その糞言語・・・やっぱrubyに変えようかな
128 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 20:47:16 ] >>126 丁寧にありがとう! なるほどそういうことか・・・ Python慣れるまで大変そうだけど、慣れればかなり便利に使えそうな気がするぜ!
129 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 20:56:37 ] パッケージでも ./Hoge/__init__.py に class Fuga 書くと from Hoge import Fuga になるし ./Hoge/Hage.py に class Fuga 書くと from Hoge.Hage import Fuga になる
130 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 20:58:54 ] >>127 正直Rubyよりはマシだと思う
131 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 21:19:25 ] 結局「どちらがより優れているか」よりも「どちらがより糞でないか」で消極的に選択される 良くない選択肢のもう一方はもっと良くない選択肢かもしれない
132 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 21:46:45 ] MLの流れで引いたな。なんだよあれ。
133 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 22:00:02 ] またruby厨の釣り質問でも来たのかい?
134 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 22:40:45 ] Pythonのモジュールシステムは、見通しがよくて好きだけどな。
135 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 22:49:24 ] 俺もPythonのモジュールシステムは好きだな
136 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 22:50:42 ] Webアプリ開発に疲れました。 クライアント側でバリデーションをしたいので、JavaScriptで書きました。 でもサーバ側でも同じチェックをしなきゃいけないので、JavaScriptで書いたのと同じ内容のをJavaとかPHPとかで書かなきゃいけない。 もうばかばかしい。 サーバ側のバリデーション用プログラムからJavaScriptのプログラムが自動的に生成されたりできませんかね。 もう両方をメンテナンスするのに疲れた。
137 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 22:55:43 ] >>136 誤爆? 発想は逆だけど、JavaScriptをサーバ側で動かすAptana JaxerっていうAPサーバ?があるよ まぁ、そういった面倒なものはフレームワークとかにそれ相応の機能があるんだけどね。 PHPのZendFrameworkならフレームワークの一部分のみ使えたりするから試してみたら?
138 名前:デフォルトの名無しさん mailto:sage [2009/01/11(日) 22:56:15 ] よく知らんけど ASP.NETとかその辺の高級な奴ならクライアントサイドバリデーションのコードを 自動生成してくれるんでなかったか
139 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 00:35:52 ] >>138 そうだよ だけど結局手作業は残る Don't repeat yourself! なんて夢のまた夢
140 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 00:45:40 ] >>137 いえ、誤爆じゃないです。 Python使いならわかってもらえると思って&&Pythonスレなら会社のやつに見つからないだろうと思って。 Djangoとかでクライアント側のバリデーションをしたい場合はどうするんでしょうか。 Djangoとしては特に支援機能はない?詳しくないので教えてちょーだい。
141 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 00:51:30 ] こちらでどうぞ pc11.2ch.net/test/read.cgi/php/1156612854/
142 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 01:31:51 ] pydocすげぇ!! HTMLに出力したらさらにすげぇ! ・・・見安すぎて逆になんだかなぁ
143 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 01:39:46 ] javadocすげぇ!! HTMLに出力したらさらにすげぇ! ・・・見安すぎて逆になんだかなぁ
144 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 01:54:25 ] rubydocすげぇ!! HTMLに出力したらさらにすげぇ! ・・・見安すぎて逆になんだかなぁ
145 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 02:01:01 ] phpdocすげぇ!! HTMLに出力したらさらにすげぇ! ・・・見安すぎて逆になんだかなぁ
146 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 02:59:28 ] こちらでどうぞ pc11.2ch.net/test/read.cgi/php/1156612854/
147 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 11:15:44 ] どうにも.orgってイカメンファッカーがダンジョーで作ってるんですね。
148 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 17:29:35 ] 今、PYTHONクイックリファレンス買っても意味あるかな?
149 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 20:01:12 ] LinuxでPythonするのに、IDLEみたいな開発環境ないかな?
150 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 20:21:02 ] >>149 NetBeans
151 名前:デフォルトの名無しさん mailto:sage [2009/01/12(月) 21:28:16 ] eclipseか、>>150 だな。 他のだと日本語を入力してもうまく出ないし、 そもそもlatin-1でコードが書かれてるのを前提としてるのばかりだからなぁ
152 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 10:09:23 ] >>149 python.el
153 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 10:36:07 ] >>149 Kdevelop
154 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 10:50:13 ] >>149 komodoEditor
155 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 11:21:58 ] emacs
156 名前:デフォルトの名無しさん [2009/01/13(火) 15:09:47 ] >>149 IDLE
157 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 18:29:30 ] 出来ました。 ありがとうございました。
158 名前:149 mailto:sage [2009/01/13(火) 18:35:31 ] 皆さんありがとうございます。 NetBeansは扱いやすいですねw
159 名前:149 mailto:sage [2009/01/13(火) 18:37:02 ] 皆さんありがとうございます。 NetBeansは扱いやすいですねw
160 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 18:49:26 ] あいかわらずここは粘着がわいてるのかよ。
161 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 23:00:27 ] greenletとかいうのを今日はじめて知ったけど、なかなか楽しいね StacklessPython風のコルーチンをCPythonに取り込むライブラリなんだが Windows + VC9 + Python2.6で試してみたらあっさりクラッシュしたけど ttps://codespeak.net/issue/py-dev/issue65 にあるように、Stacklessのヘッダ(switch_x86_msvc.h)をコピってきて ビルドしたら動いた
162 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 23:37:28 ] 併せてeventletもどうぞ。 winで動くかは分からんが。
163 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 23:50:26 ] >>162 実はeventletも試したんだけど、posix専用のsystemcallを結構使っているんで、 結構弄らないと使えないっぽいですね
164 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 14:43:35 ] a = ['aho<>baka', 'chinco<>manco'] b = ['boku', 'kimi'] c = [] X = 0 for i in a: c += [{}] Y = 0 for f in i.split('<>'): c[X][b[Y]] = f Y += 1 X += 1 これだとX,Yがなんだか汚らしいのですが、なんとか綺麗にできませんか?
165 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 15:09:15 ] a = ['aho<>baka', 'chinco<>manco'] b = ['boku', 'kimi'] aa = [s.split("<>") for s in a] c = [dict(zip(b, ai)) for ai in aa] こんなのはどうだろう
166 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 15:11:29 ] for X, i in enumerate(a): c += [{}] for Y, f in enumerate(i.split('<>')): c[X][b[Y]] = f とか
167 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 15:11:50 ] c = [dict(zip(b, i.split("<>"))) for i in a]
168 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 15:37:44 ] ('<>') かえるさんこんにちは。
169 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 18:34:17 ] >>164 for i, X in zip(a, range(len(a))): c += [{}] for f, Y in zip(i.split('<>'), range(len(i.split('<>'))): c[X][b[Y]] = f
170 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 22:02:23 ] ていうかIDLEはLinuxでも使えるだろ。 ほとんどのディストリでは標準インストールされてないけど。
171 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 22:23:00 ] python入ってれば、 $ python -m idlelib.idle & でidleが立ち上がると思う
172 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 06:36:35 ] >>164 CSV -> Database みたいな用途? だったら多分、辞書よりnamedtupleの方が扱いやすい。(2.6以降) a = ['AAA<>BBB','CCC<>DDD'] b = ['A', 'B'] from collections import namedtuple record = namedtuple('record', b) delimiter = '<>' maxsplit = len(b) - 1 c = [record(*x.split(delimiter, maxsplit)) for x in a] d = [x._asdict() for x in c] # 辞書に変換 if you needed a dict
173 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 06:54:46 ] len(i.split('<>')) -> i.count('<>') zip/splitの組み合わせは、splitにmaxsplitを指定しないと、 想定しないデータ('<>'の数が異なる)を受け取った場合、 末尾のデータを失う可能性がある。 namedtupleの場合、 maxsplitを指定しなければ要素数が異なる場合TypeErrorが投げれる。 2.5以前なら、namedtupleをbackportするか レコード型のクラスを定義して、コンストラクタの引数で要素数をチェック。
174 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 11:48:21 ] 適当な class に hoge ってインスタンス変数があるかどうかって どうやって調べるんでしたっけ? try: x = myclass.hoge() except: pass なんてやってるけど,if myclass.exists("hoge") みたいな感じの 何かがあるんでしたっけ?
175 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 11:55:41 ] hasattr(myclass, "hoge")
176 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 12:40:44 ] myclass はクラス?それともインスタンス? new style classの場合は、そのクラス,親クラスの__slots__を辿る。 old style classの場合は、無理。myclass.hogeがあるとしたら、それはクラス変数。 instanceなら hasattr(obj,'hoge') and not isinstance(getattr(obj,'hoge'),types.MethodType)
177 名前:デフォルトの名無しさん mailto:sage [2009/01/15(木) 13:26:41 ] あ インスタンスのつもりでした なので hasattr が探していたものでした thx です
178 名前:デフォルトの名無しさん [2009/01/15(木) 23:29:17 ] WAVE DASH - FULLWIDTH TILDE問題 に対応するライブラリとかない?
179 名前:デフォルトの名無しさん [2009/01/15(木) 23:42:29 ] なにそれおいしいの?
180 名前:デフォルトの名無しさん [2009/01/16(金) 00:12:44 ] 独断と偏見で選ぶ血液型別おすすめスクリプト言語 A型 Python B型 Perl O型 Ruby AB型 NASM
181 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 00:46:26 ] 独断と偏見で選ぶ血液型別おすすめスクリプト言語 A型 PHP B型 ひまわり O型 C# AB型 SmallTalk
182 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 01:03:32 ] >>180 B型ですがPerlは構文的に脳が受け付けないです Rubyは生理的にMatzを受け付けない やっぱりおっPython!
183 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 01:07:44 ] PHPが好きなO型です。 最近のイスラエル情勢に不満を覚え、PHPの利用をやめます!
184 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 01:27:35 ] >>178 普通に unicode オブジェクトの translate() メソッドでいいのでは? pc11.2ch.net/test/read.cgi/tech/1218155094/491
185 名前:161 mailto:sage [2009/01/16(金) 03:03:39 ] >>184 その書込み僕のだ、懐かしいな
186 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 07:31:42 ] >>178 ありますよ
187 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 10:23:17 ] >>178 まさか知らないの?
188 名前:デフォルトの名無しさん [2009/01/16(金) 10:39:51 ] >>180 >>181 おまえらあんまABバカにすんなよこら
189 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 10:46:50 ] >>182 同じく (Rhマイナスだけど) B型ですがPerlは構文的に脳が受け付けないです。 ちなみにスクリプト言語どれやってみようか最後まで Python と迷ったのは Haskell というやつです。
190 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 10:47:57 ] >>180 >B型 >Perl だが断る!
191 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 10:48:46 ] Haskellはスクリプト言語じゃねえだろ
192 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 11:03:46 ] >>185 このスレの161を踏んだ者だが…… 紛らわしいのでやめてくれ
193 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 13:55:50 ] >>180 O型馬鹿にするな
194 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 13:58:57 ] A型はJavaじゃね?型宣言とかしたそう。 B型はマンプス。 AB型がPython。宣言はしないけど、型にうっさいという O型はC。
195 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 14:05:09 ] >191 一応インタプリタもあるでよ
196 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 14:56:19 ] 日本限定でいえば 人口比的にAB型がPythonだな 俺もAB型だし A型はJavaScriptでいいよ
197 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 17:14:47 ] その年の、ある月の日数を取得するにはどうすればいいんでしょうか たとえば、2019年の2月の日数は○○日みたいな感じのです
198 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 17:23:31 ] >>> from datetime import * >>> (date(2008, 3, 1) - date(2008, 2, 1)).days 29 >>> (date(2009, 3, 1) - date(2009, 2, 1)).days 28
199 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 17:24:33 ] calendar.monthrange
200 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 17:27:51 ] # www.python.jp/doc/release/lib/module-calendar.html >>> import calendar >>> calendar.monthrange(2019, 2) (4, 28) # 曜日,日数
201 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 18:32:45 ] 199,200 >>>> 越えられない壁 >>>> 198
202 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 19:29:36 ] >>149-156 結局どれが一番お勧めなの? ステップライン実行デバックができるのがいいな
203 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 19:33:11 ] >>202 Wing IDE
204 名前:デフォルトの名無しさん [2009/01/16(金) 21:07:10 ] その年の、ある月の末日を取得するにはどうすればいいんでしょうか たとえば、2000年の2月の末日は28日みたいな感じのです
205 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 21:31:27 ] >>199-200 を再読してください なお2000年は閏年ですので2月の末日は29日です
206 名前:デフォルトの名無しさん [2009/01/16(金) 22:36:49 ] ドラマのブラッディーマンデイで主人公がputhon多様していたみたいだが、 彼が使っていたエディタはなにかわかるひといる? ttp://imagepot.net/view/123211290262.jpg
207 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 22:51:13 ] vimじゃん
208 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 23:25:13 ] >>207 はあ? わかるひといます?
209 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 23:41:10 ] vimだろ
210 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 23:42:08 ] 俺AB型だからPythonに惹かれたのか。
211 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 23:42:31 ] どう見ても vim だな。
212 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 23:52:00 ] gvimだな
213 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 23:54:44 ] 俺O型だけど
214 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 00:15:05 ] >>206 フォントかっこいいな。なんてやつ?
215 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 01:38:47 ] >>214 このフォントのどこが格好いいんだ アンチエイリアスが中途半端で汚いじゃない
216 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 01:58:36 ] これビットマップフォントだぞ
217 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 02:19:17 ] はあ?かっこいいといってるだろ。 なにこれ?
218 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 02:28:15 ] はあ?
219 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 03:48:25 ] うんこレンダリングフォント ulf
220 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 06:27:30 ] >>206 1-6行目不明 7行目以降 try: host,frm,to=sys.argv[1:4] except ValueError: print 'Usage: %s <host> <from> <to>' % (sys.argv[0]) sys.exit(1) print 'Connecting to %:25 ...' % (host) sock = socket.socket() try: idx = host.index(':') except ValueError: addr = (host, 25) else: addr = [host[:idx], int(host[idx+1:])] sock.connect(addr) print 'Connected' 1-6行目わかる?
221 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 06:33:51 ] import socket import sys あとコメントが数行入って終了じゃないか
222 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 07:14:08 ] 本物のハッカーならGPLが書いてあるはず
223 名前:デフォルトの名無しさん [2009/01/17(土) 07:23:49 ] >>222 本物のハッカーの多くは、GPLみたいな自由度の低い ライセンスは採用しないよ。 彼等は単に何も書かないか(こっちの方が多い)、 MITやBSDライセンスにしてることだろう。
224 名前:デフォルトの名無しさん [2009/01/17(土) 07:26:49 ] 25って決め打ちなんか
225 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 12:18:38 ] >>220 普通にこれで使えるな
226 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 13:18:20 ] print 25のとこおかしいね。
227 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 13:19:10 ] これで女子高生にvim使いが増える!
228 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 14:58:57 ] >>226 元の画像には%sになってたからただの写し間違いだと思うが host="hoge.fuga:587" とかだったときにやっぱり表示は変になるね
229 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 15:00:35 ] 1行目は #!/usr/bin/env python だと予想。
230 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 16:10:24 ] 1. #!/usr/bin/env python 2. '''hogehoge 3. fugafuga 4. ''' 5. import socket 6. import sys でFA?
231 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 16:14:28 ] 1. #!/usr/bin/env python 2. # -*- coding: hoge -*- 3. 4. import socket 5. import sys 6.
232 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 16:25:29 ] >>231 それっぽいw
233 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 16:58:53 ] PEP8守ってないから訓練されたPythonistaじゃないな
234 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 18:54:52 ] パイソニスタじゃなくてパイソニアンがいい
235 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 19:03:38 ] Pythonista, Pythonian, Pythonese, Pythonist, Pythoner どれでも好きなのを選ぶといい
236 名前:デフォルトの名無しさん [2009/01/17(土) 19:06:40 ] 日本語なら「Py使い」でいいでしょ。
237 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 19:15:42 ] お、py使い
238 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 20:18:26 ] 訓練されてないのは、盲py
239 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 20:51:27 ] PEP8守って書き直すとどうなりますか
240 名前:38 mailto:sage [2009/01/18(日) 16:23:33 ] へんじがない、ただのぱいそにすたのようだ
241 名前:デフォルトの名無しさん mailto:sage [2009/01/18(日) 22:58:52 ] ttp://www.dotup.org/uploda/www.dotup.org17528.png PEP3を出来る限り守ったらこんな変なコードになってしまったんですが どうすればいいですか?
242 名前:241 mailto:sage [2009/01/18(日) 22:59:26 ] PEP3じゃなくてPEP8でした
243 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 00:01:43 ] geditかこれ
244 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 00:24:11 ] ただものじゃないEmEditorです
245 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 00:28:20 ] どうすればいいですか?
246 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 00:31:27 ] 一見して>>241 のどこがヘンなのかわからなかったw Lispならカッコは右下に連打するだろうな、とは思ったが…… 一行79文字縛りがキツい、という話?
247 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 00:40:05 ] はい…
248 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 00:40:11 ] >>246 変じゃないなら別にいいです
249 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 00:42:41 ] >>241 正規表現を事前にコンパイルしてre.subの引数を減らせばいいんじゃね?
250 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 00:50:41 ] 入れ子のre.subの呼び出しを、複数の文に分ければいいと思うよ x = re.sub(a, re.sub(b, c, d), x) みたいなのを y = re.sub(b, c, d) x = re.sub(a, y, x) と書く どうせ一行に収まらないのなら、入れ子で書いても読みにくくなってるだけでしょ 「流れるインタフェース」でもないのだし
251 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 01:40:56 ] まともな回答はありません‥
252 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 04:19:25 ] )に違和感
253 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 04:40:45 ] >>241 うわっ、汚い。。。 普通は re_subs みたいな関数書いて、順にre.subが適用されるようにする。 あと、そのエディター酷いね。。色付けすらちゃんとされてないじゃん。
254 名前:241 mailto:sage [2009/01/19(月) 04:50:38 ] >>253 そのカンスゥー貼って下さい…
255 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 05:16:45 ] >>254 そのぐらい自分で書けないと。 初心者レベルの難易度だよ。
256 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 08:15:14 ] >>255 あのー、かんすーお願いします‥ なぜPythonスレの人たちはレベル低いのだろう
257 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 08:40:29 ] お前のレベルが低いだけ
258 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 08:41:27 ] お前のレベルが低いだけ
259 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 08:44:36 ] >>256 知能低いのかね。小学生でも書けそうな関数だとおもうが。
260 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 14:35:17 ] あの、カンスゥーまだですか・・・?
261 名前:デフォルトの名無しさん [2009/01/19(月) 18:07:26 ] >>260 こんなんでいいのか? ttp://stat001.ameba.jp/user_images/cb/2d/10040538808.png
262 名前:デフォルトの名無しさん [2009/01/19(月) 18:07:44 ] jp.youtube.com/watch?v=LC1xSR_xxuk
263 名前:デフォルトの名無しさん [2009/01/19(月) 18:08:51 ] >>262 このカンスゥーは無表情すぎて怖い
264 名前:デフォルトの名無しさん [2009/01/19(月) 18:23:11 ] >>1 の和訳チュートリヤルに嘘ばっかり書いてあるな print 'Hello, world!' ってやってもエラーになる 嘘ばっかだなと思って 英語のほうを見たら print ('Hello, world!') って書いてあったので そのとおりやったらできた。 >>1はうそつき超汚染人だ!
265 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 18:24:56 ] >>1 の和訳チュートリヤルに嘘ばっかり書いてあるな print 'Hello, world!' ってやってもエラーになる 嘘ばっかだなと思って 英語のほうを見たら print ('Hello, world!') って書いてあったので そのとおりやったらできた。 >>1はうそつき超汚染人だ!
266 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 18:25:00 ] >>1 の和訳チュートリヤルに嘘ばっかり書いてあるな print 'Hello, world!' ってやってもエラーになる 嘘ばっかだなと思って 英語のほうを見たら print ('Hello, world!') って書いてあったので そのとおりやったらできた。 >>1はうそつき超汚染人だ!
267 名前:デフォルトの名無しさん [2009/01/19(月) 18:35:47 ] >>264-266 初心者丸出し と釣られてみる
268 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 21:01:28 ] 初心者っていきなり 3 触るの?
269 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 21:43:20 ] 最新版にβとつければ初心者はさわらないかもね
270 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 22:04:50 ] Python初めて1週間 3.0→2.3.4jp→2.6.1→2.5.1
271 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 22:14:51 ] 2.5.1→2.6.1→3.0→2.5.1→2.6.1 printが強制的にカンスゥーになってたり rangeがオブジェクト返すようになっててちょっと困惑するんだよね
272 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 22:52:18 ] printは自発的に関数になったと風の便りに聞いたよ…
273 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 23:16:29 ] #2.6 x = range(100) #3.0 x = [i for i in range(100)]
274 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 23:34:58 ] list(range(100))
275 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 00:21:09 ] 結構変わったんだな。3は。
276 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 01:17:08 ] >>273 3はなんだかちょっと面倒だなって気がしてきた
277 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 01:19:52 ] 志村!
278 名前:デフォルトの名無しさん [2009/01/20(火) 07:10:13 ] あのー、回答待ってるですがまだですか? パイソンのスレッドって馬鹿しかいないなー
279 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 08:03:22 ] rangeでリストを作るなんて滅多にしないだろうに。
280 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 08:26:21 ] [i for i in range(100)] に必死で突っ込むひとまだですか?
281 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 08:35:03 ] ところで、2.6って2.5に対して完全に上位互換? 2.5用のライブラリで2.6で動かなくなったのってある?
282 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 10:49:45 ] >>281 基本的には 2.5 -> 2.6 では減っているものはない。 The *** module has been deprecated for removal in Python 3.0. という形で 3.0 でなくなる予定のライブラリは -3 オブションで警告がでるのみ。 実際に標準ライブラリから外されるのは 3.0 から。 但し、細部では各ライブラリのバージョン・アップによる変更があるので、 ライブラリ自体が動かなくなったものは知らないが、# >>> import test.autotest を参考に。 それを使ったコードの方で修正が必要なものはあるかもしれない。
283 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 15:25:18 ] >>206 #!/usr/bin/env python # -*- coding: ascii -*- import socket import sys try: host, frm, to = sys.argv[1: 4] except ValueError: print "Usage: %s <host> <from> <to>" % (sys.argv[0]) sys.exit(1) print "Connecting to %s:25 ..." % (host) sock = socket.socket() try: idx = host.index(':') except ValueError: addr = (host, 25) else: addr = (host[:idx], int(host[idx + 1:])) sock.connect(addr) print "Connected"
284 名前: ◆TINKO/J0J6 [2009/01/20(火) 16:54:58 ] import tinko
285 名前: ◆UNKOVIP9RM [2009/01/20(火) 16:56:15 ] import unko
286 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 16:57:28 ] unkoはexportするものだろ
287 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 17:56:07 ] from anal export unko
288 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 17:56:14 ] 自然数k,p,qについて k=mp+nq(m,nは「0以上の整数」)を満たす(m,n)の組の数をv(k)とするとき p=3, q=7, kが1から100までのときの結果vの一覧を出力したいです どのように書いたらいいですか?
289 名前: ◆UNKOVIP9RM [2009/01/20(火) 17:58:02 ] >>288 ggks
290 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 18:05:00 ] p=3 q=7 t=0 u=0 for k in range(1, 101): v=0 for m in range(k/p+1): if (k-m*p)%q == 0: v+=1 print 'v(%d)=%d\n' % (k, v) u+=v if v: t+=1 print 'total %d, %d\n' % (t, u)
291 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 18:11:16 ] v = lambda k, p, q: \ [(m, n) for m in range(k/p + 1) for n in range(k/q + 1) if k == m * p + n * q ] for k in range(1, 101): print k, '->', ', '.join(map(str, v(k, 3, 7)))
292 名前:291 mailto:sage [2009/01/20(火) 18:13:44 ] あー計算量的に無駄なのか まあいいや
293 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 18:26:22 ] >>> p,q=3,7 ; Max=101 >>> for k in range(Max): print k, len(filter(lambda x:(k-x)>=0and(k-x)%q==0, range(0,Max,p))) ... 0 1 1 0 2 0 3 1 4 0 5 0 6 1 7 1 8 0 9 1
294 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 18:37:45 ] すまん、こうだった >>> p,q=3,7 ; Max=101 >>> for k in range(Max): print k, len(filter(lambda x:(k-x)%q==0, range(0,k+1,p))) ... 0 1 1 0 2 0 3 1 4 0 5 0 6 1 7 1 8 0 9 1 最後の len(... 以降が v みたいなもん、
295 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 18:48:31 ] k=0は蛇足です
296 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 18:51:40 ] >>289- Thank you so match.
297 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 18:56:16 ] >>280 待ち人来たらず
298 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 19:11:35 ] p,q,d=3,7,100 for k in range(1,d+1): print k,'->',','.join(map(str,[(m/p,(k-m)/q) for m in filter(lambda x:(k-x)%q==0, range(0,k+1,p))])) こうですか わかりません
299 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 19:13:47 ] >>283 ありがとうございました
300 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 19:37:45 ] >>298 あってるっぽい気がするけど?
301 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 19:42:11 ] ttp://www.toshin.com/center/sugaku-2b_mondai_6.html
302 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 19:49:44 ] なるほどw
303 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 20:16:21 ] python的に解くとどうなりますか? 3^(3^3)の一の位の数字は? 7^(7^7)の一の位の数字は? 13^(13^13)の一の位の数字は? 17^(17^17)の一の位の数字は? n^(n^n)の一の位の数字は?
304 名前:デフォルトの名無しさん [2009/01/20(火) 20:30:34 ] pythonを学習しようかと考えていますが、巷で出回っているフリーの(GUI)ツール類 などはCなどで書かれていると思いますが、ptyhonでも同様のことができますか? そこまで大規模なツールではなく簡単シンプルなツールです。 本屋でちょっと読んだ参考書にはwindows用のフォームやボタンの配置などが 書かれていなかったので、CUIのプログラミングだけかと…
305 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 20:35:40 ] Tkinter, wxPython, pywin32などでぐぐれ
306 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 20:37:08 ] そんなことないですよ
307 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 20:38:38 ] 628 名前:デフォルトの名無しさん :2009/01/20(火) 20:10:12 VB6の代わりにならないかな VB6ユーザーには、Delphiは難し過ぎるみたいだし PythonにVB並のRADツールを備えた統合開発環境があればいいんだけど 629 名前:デフォルトの名無しさん :2009/01/20(火) 20:20:45 そこでIronPythonですよ。 630 名前:デフォルトの名無しさん :2009/01/20(火) 20:30:35 UbuntuではNativeで動き WindowsではVMで動くPythonキボンヌ!
308 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 20:39:33 ] pc11.2ch.net/test/read.cgi/tech/1167996371/
309 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 20:40:18 ] pc11.2ch.net/test/read.cgi/tech/1157686822/
310 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 20:59:57 ] >>288 BASICでクソプログラム見せられたらやっぱPythonできれいに書きたくなるよね。
311 名前:310 mailto:sage [2009/01/20(火) 21:01:43 ] 俺はIIの最後で2点と統計で2点落としちまったぜ
312 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 21:23:33 ] >>304 オマエが読んだクソ本を怨め
313 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 21:38:57 ] from collections import defaultdict p = 3 q = 7 d = 100 answer = defaultdict(int) for m in xrange(d / p): for n in xrange(d / q): k = p*m + q*n if k > d: break answer[k] += 1 for k in range(d+1): print k, answer[k]
314 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 22:21:03 ] >>303 from itertools import repeat def _f(n): def _mul(n, m): return ((n % 10) * (m % 10)) % 10 def _pow(n, m): return reduce(_mul, repeat(n, m-1), n) return _pow(n, _pow(n, n))
315 名前:314 mailto:sage [2009/01/20(火) 22:39:22 ] 間違えた。_powの第二引数は一の位だけじゃ駄目だ。
316 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 22:40:16 ] うむ
317 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 23:44:56 ] pow(n, pow(n, n), 10)
318 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 23:49:54 ] >>> pow(3,pow(3,3),10) 7 >>> pow(7,pow(7,7),10) 3 >>> pow(13,pow(13,13),10) 3L >>> pow(17,pow(17,17),10) 7L あってる?
319 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 00:35:03 ] あってるけど、 アルゴリズム的には n が大きいときの pow(n, n) が課題。
320 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 01:37:05 ] 遅いって言っても、1000ぐらいまでなら一瞬で出るぞ >>> i=1 >>> while 1:print i,pow(i,i**i,10);i+=1 ... 1 1 2 6 3 7 4 6 5 5 6 6 7 3 8 6 9 9 10 0 11 1 12 6 13 3 14 6 ... ... ... 1197 7 1198 6 1199 9 1200 0 1201 1
321 名前:317 mailto:sage [2009/01/21(水) 01:57:21 ] nのべき乗の1の位が、ある周期で循環することを利用して指数を小さくしてみた。 # coding: utf8 def cycle(n): i = n*n % 10 lst = [i] while n != i: i = i*n % 10 lst.append(i) return lst def main(): cycles = [cycle(i) for i in xrange(10)] clen = [len(item) for item in cycles] for i in range(10): print i, cycles[i] print "" for n in xrange(1, 1000): cl = clen[n%10] nn = pow(n, cycles[n%10][n%cl]) nnn1 = pow(n, nn, 10) print n, nnn1 if __name__ == '__main__': main()
322 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 02:25:02 ] ほぼ同じことだけど、自分もやってみた、これだと、googol(=10**100)ぐらいまでは一瞬 def f(n): c = cycle(n,10) return pow(n, pow(n, n, c) or c, 10) def cycle(n, modulo): s=set() ; x = n % modulo while x not in s: s.add(x) ; x = x * n % modulo return len(s) for i in range(7): print i, f(10**10**i+i) $ python 303.py 0 0 1 1 2 6 3 7 4 6 5 5 6 6
323 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 02:28:11 ] www.kohgakusha.co.jp/books/detail/978-4-7775-1419-9
324 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 05:39:19 ] >>321 そこまでたどり着けば実はpow使わなくても答え出てるんだけどね
325 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 05:45:02 ] 13=10+3だから、13^nの1の位は3^nの1の位と同じで4個周期。 13=12+1だから13^13を4で割った余りは1。 13^(13^13)の1の位は3^1の1の位と同じなので3。 17=10+7だから、17^nの1の位は7^nの1の位と同じで4個周期。 17=16+1だから17^17を4で割った余りは1。 17^(17^17)の1の位は7^1の1の位と同じなので7。
326 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 08:11:54 ] クソ本が改訂してクソでなくなるのかな?
327 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 09:36:24 ] まあ評価は見てからですかねー
328 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 10:30:01 ] はじぱい 第2版 (2004/11) \5,040 www.amazon.co.jp/products/dp/4873112109/ はじぱい原著 3rd Edition (2008/07/16) $26.39 www.amazon.com/Learning-Python-3rd-Mark-Lutz/dp/0596513984/ 恥ぱい 初犯 (2007/11) \1,995 www.amazon.co.jp/products/dp/4777513211/ 恥ぱいネットワーク 初版 (2008/06) \1,995 www.amazon.co.jp/products/dp/4777513688/ 恥ぱい3 初版 (2009/01) \1,995 www.kohgakusha.co.jp/books/detail/978-4-7775-1419-9 恥ぱいが3.0用になったんですね
329 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 11:10:29 ] 恥の上塗りというわけですね。
330 名前:デフォルトの名無しさん [2009/01/21(水) 11:20:55 ] 俺もウェブの無料チュートリヤル翻訳して金稼ぎたい
331 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 11:40:37 ] ライブラリレファレンスの和訳更新・改良を ガンガンやってくれるならお布施くらいはするでよ?
332 名前: ◆UNKOVIP9RM [2009/01/21(水) 11:53:01 ] >>312 惚れた 惚れた 惚れた できれば結婚してくれ
333 名前: ◆UNKOVIP9RM [2009/01/21(水) 11:54:09 ] >>328 買う 買うー
334 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 11:58:54 ] 周期が4の公約数になるのを利用するとこれでもok? pow(n % 10, (n & 3) or 4, 10)
335 名前: ◆UNKOVIP9RM [2009/01/21(水) 11:59:03 ] >>> import >>329 >>> print (329.star()) "星3つ"
336 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 12:08:27 ] >>328 はじぱいの癖に5040円って翻訳書のはじ
337 名前: ◆UNKOVIP9RM [2009/01/21(水) 12:18:59 ] >>336 円安だったんだよ