[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 2chのread.cgiへ]
Update time : 05/09 11:17 / Filesize : 114 KB / Number-of Response : 569
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Pythonのお勉強 Part32



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/

2 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:47:47 ]
おつ

3 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 02:11:36 ]
オツ

4 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 02:21:16 ]
>>1
これはおつじゃなくて
たぶん蛇のシンボルうんぬん

5 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 02:22:01 ]
掲示板作ったよ。
なんかホールとか発見したら教えてね。
しばらくしたら忘れてね。
rail.s4.pf-x.net/bbs/

6 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 04:16:32 ]
import winsound
for i in (262, 294, 330, 349, 392, 440, 494, 523): winsound.Beep(i, 100)

7 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 10:47:34 ]
君たちがよだれを垂らしながらほしがってるRubyのブロックつきメソッドは
Pythonから見れば叶わぬ夢であるという自覚くらいは持って頂きたく

8 名前:デフォルトの名無しさん [2009/02/16(月) 12:18:31 ]
■■日本語を文字化けしないで表示するやり方、エロい人教えて

# -*- coding: utf-8 -*-

import urllib

url = 'table.yahoo.co.jp/t?s=998407.O&g=d'
html = urllib.urlopen(url).read()

#a = html.decode('EUC-JP') #error
#b = html[:18].decode('EUC-JP') #ここまでなら実行できる

print html

9 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 12:25:49 ]
Rubyのような中途半端なもの使うくらいならLispを使うな
LispとPython(おまけでPerl)があれば十分

10 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 12:33:11 ]
>>8
ページ見てみたけど、先頭の方のHTMLコメント内に
euc-jpとしてデコードできない文字が入ってるようだ

html.decode('euc-jp', 'ignore')

html.decode('euc-jp', 'replace')
とでも汁



11 名前:デフォルトの名無しさん [2009/02/16(月) 13:01:27 ]
>>10

うぉ〜出来た!多謝!!!

12 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 13:51:26 ]
スルー力って大事だね。

13 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 14:21:44 ]
リスト内包が便利すぎて最近RubyやLispのリスト処理関数忘れてしまった

14 名前:デフォルトの名無しさん [2009/02/16(月) 21:44:44 ]
                          刀、           , ヘ
                  /´ ̄`ヽ /: : : \_____/: : : : ヽ、
              ,. -‐┴─‐- <^ヽ、: : : : : : : : : : : : : : : : : : : : : : }
               /: : : : : : : : : : : : : :`.ヽl____: : : : : : : : : : : : : : : : : : /
     ,. -──「`: : : : : : : : : :ヽ: : : : : : : : :\ `ヽ ̄ ̄ ̄ フ: : : : :/
    /: :.,.-ァ: : : |: : : : : : : : :    :\: : : : :: : : :ヽ  \   /: : : :/
    ̄ ̄/: : : : ヽ: : : . . . . . . . . . . .、 \=--: : : :.i  / /: : : : :/
     /: :     ∧: \: : : : : : : : : : ヽ: :\: : : 〃}/  /: : : : :/         、
.    /: : /  . : : :! ヽ: : l\_\/: : : : :\: ヽ彡: : |  /: : : : :/            |\
   /: : ィ: : : : :.i: : |   \!___/ ヽ:: : : : : : :\|:.:.:.:/:!  ,': : : : /              |: : \
   / / !: : : : :.ト‐|-    ヽ    \: : : : : l::::__:' :/  i: : : : :{              |: : : :.ヽ
   l/   |: : :!: : .l: :|            \: : : l´r. Y   {: : : : :丶_______.ノ: : : : : :}
      l: : :l: : :ト、|         、___,ィ ヽ: :| ゝ ノ    '.: : : : : : : : : : : : : : : : : : : : : : /
      |: : :ト、: |: :ヽ ___,彡     ´ ̄´   ヽl-‐'     \: : : : : : : : : : : : : : : : : : イ
        !: :从ヽ!ヽ.ハ=≠' , ///// ///u /           ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
      V  ヽ|    }///  r‐'⌒ヽ  イ〉、
              ヽ、______ー‐‐' ィ´ /:/:7rt‐---、       こ、これは>>1乙じゃなくて
                  ィ幵ノ ./:/:./:.! !: : : : :!`ヽ     ポニーテールなんだから
              r‐'T¨「 |: | !:.∨:/:./: :| |: : : : .l: : : :\   変な勘違いしないでよね!
               /: : .|: :| !:.!ィ¨¨ヾ、:.:/ !: : : : l: : : : : :.\


15 名前:デフォルトの名無しさん [2009/02/17(火) 15:09:36 ]
ここから勃起した巨大ペニスのAAを発射

16 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 01:21:05 ]
つうかまじでpython厨うざい。
python厨は全員首吊って死ねよ。

ruby人口の方が多い。
rubyの方がいろいろできる。
言語的仕様は好みの問題。
議論の余地無し。
以上。

17 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 01:32:52 ]
pass

18 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 02:26:46 ]
>>1
ぱい乙

19 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 14:06:58 ]
>>16
いろいろできるについてkwsk


20 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 14:45:29 ]
煽りにマジレスしても意味ないが、
流石にruby人口の方が多いというのは無理があると思う



21 名前:デフォルトの名無しさん [2009/02/18(水) 14:47:34 ]
>>19

>>16 は前スレの >>979 に対して python ⇔ ruby 変換をしてコピペしたもの。
他人のレスを盗作するしかないぐらいに悔しくなった ruby 厨の仕業。
以前からpythonスレを荒しまくり、自分でrubyコミュニティーのアホさ加減を露呈している人間。
俺がrubyを使うのを止めて、python使いになるきっかけをになってくれた張本人でもある。

完全無視推奨。
以下、オリジナルのソース:

pc11.2ch.net/test/read.cgi/tech/1230821097/
| From: [979] デフォルトの名無しさん <sage>
| Date: 2009/02/17(火) 14:18:58
|
| つうかまじでruby厨うざい。
| ruby厨は全員首吊って死ねよ。
|
| python人口の方が多い。
| pythonの方がいろいろできる。
| 言語的仕様は好みの問題。
| 議論の余地無し。
| 以上。
|
| From: [985] デフォルトの名無しさん <sage>
| Date: 2009/02/17(火) 17:21:04
|
| 結局のところ>>979が穏便かつ正論だと言わざるを得ないな


22 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 14:53:56 ]
実はrubyスレでも煙たがられる狂信者

23 名前:デフォルトの名無しさん [2009/02/18(水) 15:17:12 ]
同じ宗教の人が応援してるんでしょ

24 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 16:15:26 ]
3になって何が変わったのさ

25 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 16:41:31 ]
docs.python.org/3.0/whatsnew/3.0.html
text.world.coocan.jp/TSNET/?What%27sNewInPython3.0

26 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 17:01:10 ]
ruby厨は実はMatz本人だなんて事実は口が裂けても言えない

27 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 17:41:41 ]
pass

28 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 19:36:43 ]
netbeanとeclispどっちがおすすめ?

29 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 20:08:20 ]
>>28
lisp


30 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 21:09:44 ]
>>28
NetBeansでも問題なく普通にコーディングできるよ。
ただ、物凄く気になるのが1ソース内のインスタンス変数を同一のものと認識してくれない。
普通の変数なら、その変数を選択した時点でソース内の同じ変数が全てハイライトされるし
一括置換できるけど、インスタンス変数は出来ない。

次のバージョンぐらいから正式にサポートするみたいだからそれまではEclipseの方がいいかも
しれない。



31 名前:デフォルトの名無しさん [2009/02/18(水) 23:33:45 ]
ide使いたいならkomodoがよくね?

32 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 23:37:49 ]
>>31
komodoは前のバージョンで日本語化したら、プロジェクト作ったりするときに
XMLがオカシイ!ってエラーが事あるごとに出てから嫌になった・・・

33 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 03:45:35 ]
ぺちぱーの漏れが初めてpythonを触ってみた
シンプルに書けて良い感じ
コーディングスタイルを統一しやすいのもかなりマル
気にいったのでコツコツ勉強しますお

34 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 04:11:41 ]
Pythonって関数(メソッド)の命名規則ってあるの?
組み込みの関数名が全部小文字だったり、単語区切りでアンダーバーが
あったりで・・・
よく使う関数とかは直ぐなれちゃうんだろうけど。

35 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 04:46:31 ]
>>34
とりあえずPEP8を読もう

36 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 04:54:37 ]
関数は全部小文字、適宜アンダーバー…じゃないかな?

37 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 06:41:10 ]
boostの名前の付け方と似た感じなのかな

38 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 12:27:49 ]
kei-software-engineering.blogspot.com/2009/01/programming-language-comparison.html
kei-software-engineering.blogspot.com/2008/12/tools-programming-language-comparison.html

identifier can be namig
kei-software-engineering.blogspot.com/2009/01/programming-language-comparison-detail.html
>with sigil

_ は taxonomy な見方でみると sigil に属するものなんだろか…

39 名前:デフォルトの名無しさん [2009/02/19(木) 13:39:15 ]
Pyrex がすごい!


40 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 14:12:41 ]
がいしゅつ?
www.ibm.com/developerworks/jp/linux/library/l-python3-1/




41 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 14:21:38 ]

Python 3.0 は隔離スレを作るべきだと思うのは俺だけかな?
そもそもあれは実用で使うには時期が早すぎるわけで、ここで
普通に語られても困る。


42 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 15:11:42 ]
別に

43 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 16:09:20 ]
細分化する必要性が全く感じられない。
各自がレスの内容を収拾選択すればいいだけ。

44 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 17:03:12 ]
このごろ新しく書き起こすプログラムは 3.0 向けに書くようにしているが
個人的にはこれまでのところほとんど違和感がない。2.x からの変更点の
リストを見て移行はたいへんだろうと予想していたので意外だった。

俺は Tkinter を愛用していて、この GUI ツールキットを使っている分には
2.x と 3.0 の差はほとんどない。print() や "".format() もそういうものだと思って
使ってみると別段困ることはない。

C API が大きく変わっているのが印象的だった。char * だったところが
wchar_t * になっててとまどった。

振り返ってみると 1.5.2 から 2.0 に移るときも案外スムーズだった気がする。
既存のプログラムは旧 Python で実行しつつ新しいプログラムは新 Python で
書いていたのも同じ。1.5.2 用から 2.0 用に書き直した自作の常用プログラムは
1つだけ(このプログラムは未だに使っている。そのうち 3.0 用に書き直すかも)。

まあ使い方に依るのかもしれない。個人的には今のところ 3.0 に満足してる。


45 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 17:30:14 ]
まぁ、趣味人としは、3.0がこなれてきたら、
新しいスクリプトは3.0で書けばいいやって感じだな。

46 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 22:38:26 ]
from b import c
この構文って3.0でも残るんだな。
import aとのギャップが直感的でない気がするのだけど。

47 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 23:27:43 ]
from x import * は禁止して欲しい

48 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 23:46:14 ]
>>46
from b import cがなくなったら困る。

>>47
わからないでもないけど、__init__.pyとかでは普通に使ってるから
なくなると面倒になる。

49 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 00:29:33 ]
まだCentOSとかにデフォで入ってるのが2.4だったりするから、
配布を考えているものは2.4用にしてしまう。

50 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 00:33:40 ]
新バージョンへの移行を促すべき



51 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 02:32:12 ]
Python 3.0 は隔離スレを作るべきだと思うのは俺だけかな?
そもそもあれは実用で使うには時期が早すぎるわけで、ここで
普通に語られても困る。

52 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 03:08:57 ]
細分化する必要性が全く感じられない。
各自がレスの内容を収拾選択すればいいだけ。

53 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 03:21:16 ]
それコピペ

54 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 05:22:25 ]
print 1
print (1)
どっちでも通るんだけど py 2.5.4, ipy 2.0.1
2.5系から文になったんだっけ…これ2.6からだったような…


55 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 05:27:17 ]
逆だ…orz
「関数」になったんだっけ


56 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 05:40:12 ]
>>54
(1)も1と同じ意味だから通るに決まってる。
(1, 2)になるとタプルになるが。

57 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 09:14:47 ]
Python 2.5.2 (r252:60911, Jul 31 2008, 17:28:52)
>>> print ("aaa",3)
('aaa', 3)
>>> print (1,2,sep="#")
File "<stdin>", line 1
print (1,2,sep="#")
^

Python 3.0 (r30:67503, Feb 9 2009, 13:18:20)
>>> print ("aaaa",3)
aaaa 3
>>> print (1,2,sep="#")
1#2

58 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 10:16:02 ]
それコピペ

59 名前:デフォルトの名無しさん [2009/02/20(金) 12:33:17 ]
【実験台】 Python 3.0 のお勉強 Part 1 【非互換】
pc11.2ch.net/test/read.cgi/tech/1235050215/

60 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 15:18:34 ]
うっわー、バカじゃねえの。いや疑うまでもないか。



61 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 21:06:38 ]
スレ荒らす暇でRubyもPythonも覚えればいいだろ
つかRubyスレだけじゃなくてPythonスレも荒らしてんのか
暇だねえ

62 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 22:08:48 ]
[1,2,3] を ['1', '2', '3'] にしたいのですが

>>> [1,2,3]
[1, 2, 3]
>>> ','.join([1,2,3])
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: sequence item 0: expected string, int found
>>> ','.join(str([1,2,3]))
'[,1,,, ,2,,, ,3,]'

わけがわかりません><

63 名前:デフォルトの名無しさん [2009/02/20(金) 22:09:22 ]
>>> ','.join(map(str, [1,2,3]))
'1,2,3'

64 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 22:10:18 ]
>>> ','.join('%d' % i for i in [1,2,3])
'1,2,3'

65 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 22:11:32 ]
>>> ['%d' % i for i in [1,2,3]]
['1', '2', '3']
>>> map(str, [1,2,3])
['1', '2', '3']
>>> str([1,2,3])
'[1, 2, 3]'

66 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 22:15:07 ]
なんでこうなるの?

>>> ','.join('[1, 2, 3]')
'[,1,,, ,2,,, ,3,]'
>>> ','.join(str([1,2,3]))
'[,1,,, ,2,,, ,3,]'


67 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 22:17:42 ]
join はリストを受け取るから
'[1, 2, 3]' は
['[', '1', ',', ' ', '2', ',', ' ', '3', ']']
になってから join() される


68 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 22:23:05 ]
>>66
こうすれば理由が判ると思う。
>>> '#'.join('[1, 2, 3]')
'[#1#,# #2#,# #3#]'
>>> '#'.join(str([1,2,3]))
'[#1#,# #2#,# #3#]'

69 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 23:00:37 ]
>>48
ごめん、何でなくなると困るのか教えて。

70 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 00:08:06 ]
>>54
関数呼び出しの () を省略できるのは、 IPython の機能であって、
Python の構文ではないよ。



71 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 00:53:30 ]
全然関係ないけど、asciiであと1個か2個他のカッコがあれば便利だったのにw

72 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 00:56:25 ]
>>70
どこで関数よんでるんだ?

73 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 01:49:31 ]
(1)が1と評価されて、print文に渡されてるだけ。
3.0から式になるから違うけど

74 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 01:50:12 ]
(1,)とすれば違うだろうけど

75 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 02:21:17 ]
>>39
Cythonの方がいいよ

76 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 02:30:13 ]
うちのFreeBSDのPythonちゃんが2.5.4になったお

77 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 02:39:26 ]
>>73-74
やれやれ、嘘を書くのはそこまでにしなさい。関数タイプの書き方許される様になったのは昔から。2.0とかじゃないの。

78 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 03:26:54 ]
>>73
式っていうなら昔からもこれからも式だろw

3.0で文から関数に変わったんだろ

79 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 08:32:52 ]
>>72
IPython 使ってみな。超便利だぜ。
In [1]: ord 'A' # これを
------> ord('A') # 勝手にこう解釈してくれる
Out[1]: 65

80 名前:70=79 mailto:sage [2009/02/21(土) 08:35:46 ]
うわー、恥ずい。完全勘違い。
(1,)はタプルだけど(1)は1ってだけの話だな。
Python3.0ではIPython使えないしな。

>>77
from __future__ import print_function ってすればの話だよね。



81 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 10:11:50 ]
>>80
式っていうなら昔からもこれからも式だろw

3.0で文から関数に変わったんだろ

82 名前:70=79 mailto:sage [2009/02/21(土) 10:36:05 ]
>>81
俺は式とか文とかいう話題には参加してないが?

83 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 12:32:19 ]
Pythonスレに粘着してるのは多分一人だと思うんだが奴は何がしたいのか

84 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 13:09:12 ]
その一人は83の脳内にいる。

85 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 15:06:22 ]
ぼくたちの心のなかにいるんだ

86 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 17:28:48 ]
そもそも2chってめっきり人減ったよな
げろゆきが魅力無くなって手放したのも
理解出来る

87 名前:デフォルトの名無しさん [2009/02/21(土) 17:41:17 ]
lucumr.pocoo.org/2009/2/8/forcing-cell-creation-in-generated-python-code

jinja2ってこんな面倒なことしてたんだな。
def bar(a=a):でいいと思うんだけど

88 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 18:23:03 ]
結局
パイソンかルビーどっちがいのよ。
ルビーは日本人口が多くて
パイソンはハッカーも認める初心者にもおすすめの奥の深い言語
って聞いたんだけど。

89 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 18:29:29 ]
gamilのパスワードを変えるスクリプトを
urllib,urllib2,cookielibで書いてみた
Rubyよりも簡単な気がするのは樹の精?

90 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 18:31:10 ]
どっちも同じようなもんだろ



91 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 18:58:44 ]
Python が連立方程式だとすれば
Ruby はつるかめ算みたいな感覚かな

92 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 20:00:16 ]

■ おすすめ2ちゃんねる 開発中。。。 by FOX ★
このスレを見ている人はこんなスレも見ています。(ver 0.20)
早稲田理工スレの次スレ [大学受験]

93 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 23:14:13 ]
つttp://www.youtube.com/watch?v=y8SZnU5iG-4

94 名前:デフォルトの名無しさん [2009/02/21(土) 23:36:24 ]
パイパンかこうぜ

95 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 23:45:28 ]
>>88
最近Google App Engineのために勉強がてら出来るだけPythonを使うようにしている
いままではRubyで書いていた、仕事で使う書き捨てツールや日常の自動化ツール等をPythonで書くようにした

その結果感じたのは
使いやすさではRubyの圧勝

96 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 23:53:59 ]
最近勉強がてらに出来るだけ英語を使うようにしている
いままでは日本語で読んでいた、仕事で使う本や趣味の本等を英語で読むようにした

その結果感じたのは
使いやすさでは日本語の圧勝

97 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 23:58:38 ]
一応、慣れの問題は差し引いて考えてるよ

98 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 23:58:57 ]
>>95
判断しかねるので、もうちょっと具体的に聞きたいな。

99 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:14:15 ]
最近Google App Engineのために勉強がてら出来るだけPythonを使うようにしている
いままではRubyで書いていた、仕事で使う書き捨てツールや日常の自動化ツール等をPythonで書くようにした

その結果感じたのは
使いやすさではPythonの圧勝

100 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:16:20 ]
str.len() じゃなくて len(str) だったり
str(u'ほげ') すると死んだり
Ruby 使ってたら疑問にも思わなかったことが
Python だと「あれっ?」て思うことはかなりある



101 名前:95 mailto:sage [2009/02/22(日) 00:17:00 ]
まず第一にPythonのドキュメントって読みにくくない?

第二に len がメソッドでなかったりする一貫性の無さが
未知の仕様の推測やドキュメントのどこを調べればいいのかの推測を難しくする
まぁ、これは慣れれば問題ないというか、慣れれば逆にこっちの方が良いのかもしれないけど
こういうのって慣れにくさの原因にもなるでしょ

あと、ライブラリのインターフェースがユーザーフレンドリーじゃない感じ

正規表現が言語に溶け込んでなくて使いにくい

102 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:20:25 ]
>>> u'ほげ'.__len__()
2
>>> 'ほげ'.__len__()
4
>>> len(u'ほげ')
2
>>> len('ほげ')
4
>>> len(u'ほげ'.encode('utf-8'))
6
>>> len(u'ほげ'.encode('ujis'))
4
>>> str('ほげ')
'\x82\xd9\x82\xb0'
>>> str(u'ほげ')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
UnicodeEncodeError: 'ascii' codec can't encode characters
in position 0-1: ordinal not in range(128)
>>> str(u'ほげ'.encode('utf-8'))
'\xe3\x81\xbb\xe3\x81\x92'
>>> str(u'ほげ'.encode('ujis'))
'\xa4\xdb\xa4\xb2'

103 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:21:49 ]
>>101
>まず第一にPythonのドキュメントって読みにくくない?
少なくとも Ruby よりましですね


104 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:23:36 ]
正規表現については、perlより使いやすい構文に出会ったことがない。
やはりfirst class扱いされてると使いやすさは段違いだ。

105 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:23:53 ]
lenくらい光速で覚えられないゆとりはRubyを使えばいいよね。

106 名前:デフォルトの名無しさん [2009/02/22(日) 00:26:12 ]
私がPythonにイラっとくるのは戻り値がない(selfを返さない)メソッドが多いことかな
obj.hoge().fuga().hage()
っていうことが(出来るケースもあるけど)出来なくて鬱陶しく感じるときがあります
式と文が区別されてることは事情が判るので我慢出来るんですが

107 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:26:14 ]
>>101
RubyはどうかしらないけどPythonのドキュメントは俺も読みにくいと思う。

108 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:26:49 ]
C++とかの正規表現よりまし
¥記号いくつ並べるんだよって思う

109 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:29:21 ]
読みにくいと思うひとは具体的に例をあげてもらえますか?

110 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:32:39 ]
初めてのPythonにUNICODEの扱いがほとんど書かれてないし
しかも間違ってるwことかな



111 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:33:43 ]
>>109
まず例が少ないよ

112 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:35:51 ]
>>105
lenが覚えられないとは書いてないじゃない
lenがあることで他の仕様が推測しにくくなるった書いてるんですよ

113 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:36:02 ]
>>110
あれは著者が UNICODE についてなにも知らないので
触れてるフリしてさりげなくスルーしてるだけかと

114 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:37:34 ]
>>87
違いは、
def bar(a=a): だと barが定義された時点のaの値が func_defaultsに入る。
URLのはcell creationとある様に、barが呼び出された時点のaの値がfunc_closureにcellオブジェクトとして格納される。
…くらいかな、。jinja2内での用途は知らないけど、
locals()の返す辞書にaを含めるという点はどちらも満たしてるし、
記事にはcellはoevrheadと書かれているので、cellオブジェクト自身が必要なのではなく
結果だけ欲しいのであれば、どちらでもいいのかもしれない。



115 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:37:48 ]
流れを切る様ですみません。

class C:
 f = lambda x: x + 1

と書いて、C.f(3)などとやろうとすると
fの第一引数がCのinstanceになってしまうのですが、
なんとかならないでしょうか?

今は仕方ないので

 @classmethod
 def f(cls,x): return x + 1

としていますが、わずらわしいです。

116 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:38:48 ]
カッコ無しでメソッド呼び出しをできるようにしてしまったばっかりに
メソッドオブジェクトの代入に特別な文法を導入せざるを得なかったRubyってかっこいいよね。

117 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:39:36 ]
tupleとlistの使い分けが良くわからないんですけど
それぞれに決まった用途ってあるんですか?

118 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:44:17 ]
4.16 Why are there separate tuple and list data types?
www.python.org/doc/faq/general/#why-are-there-separate-tuple-and-list-data-types

119 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:44:24 ]
>>115
f = staticmethod(lambda x: x + 1)

120 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:48:54 ]
>>119
できました!
ありがとうございます。



121 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:54:22 ]
>>117
tuple は型が違うものを混ぜても気にせず放り込んで
list は型がそろっている
という使い分けを無意識にしてるような気がします

122 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:56:53 ]
>>121
listで型をそろえるとなるとtreeが作れないね

123 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 01:05:03 ]
そうしないといけないって訳じゃないのでは

124 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 01:06:53 ]
tuple は immutable だからね

125 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 01:08:40 ]
>>117
tupleとlistで一番違うのは、辞書のキーに使えるかどうかかな。
tupleは辞書のキーにできるが、listはできない。

辞書のキーには変更可能(mutable)な型は使えないから。

126 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 01:09:20 ]
pythonのlistはvectorに改名した方が実情にあっている。
そして、immutableなlistを新しく入れて欲しい。

127 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 01:10:14 ]
>>126
同時に末尾最適化も入れないとあまり意味が無いな

128 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 01:13:21 ]
immutableなlistとtupleの違いを詳しく

129 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 01:15:20 ]
>>126は、力点としては関数型的なconsリストを指しているのだと思う

130 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 01:18:00 ]
immutableなlist [a1,a2,a3,a4]は

(a1,(a2,(a3,(a4,()))))

で代用できる。面倒だけど。



131 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 01:20:05 ]
>>130
確かにそれでできるけど、map/filter/foldとか使えないし
自前で再帰的なアルゴリズムを記述しても末尾最適化もされないから
ぶっちゃけオモチャだよね

132 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 04:29:54 ]
lenが一貫性ないってのはよくわからん。一貫性がないっていうのは
Javaみたく配列の長さはa.length、ArrayListはa.size()、文字列の長さは
a.length()みたいのを一貫性がないというのであって、Pythonのは違うと
思う。まあ、慣れの問題だね。

133 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 05:19:36 ]
一貫性ねえじゃんwww

134 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 05:25:43 ]
愚かな一貫性は・・・

135 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 05:31:34 ]
length size count
add append push_back
delete remove erase
title caption text
widget control component
list array vector

136 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 05:34:41 ]
一貫性を定義しろ。話はそれからだ

137 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 05:38:33 ]
goo国語
いっかん-せい ―くわん― 0 【一貫性】
最初から最後まで矛盾がない状態であること。同じ態度を持続すること。

138 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 08:35:30 ]
Ruby厨の言うことは一貫性がない。

139 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 10:58:51 ]
結局のところどっちも使えるようにしとけっ!
みたいな

140 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 11:08:14 ]
>一貫性がないっていうのは
>Javaみたく配列の長さはa.length、ArrayListはa.size()、
>文字列の長さは a.length()みたいのを
>一貫性がないというのであって

どうして一つの文章で一貫性がないを二度も言う必要があるのはなぜなのかはおいといて
Javaでは「敢えて使い分けてる」んですよ
型安全と、メソッド名から型が判別出来こととの冗長性をわざと実現しているんです



141 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 11:27:49 ]
nautilussvnを使っているんですが、クライアント認証を使ったSSLを経由してsvnサーバに
つなごうと思ったら、SSLに対応していないのかエラーが出てしまいます。

Error : callback_ssl_client_cert_prompt required
↑こんなの

なんとなく、クライアント認証用のプロンプトが必要だとか言ってるっぽいので、pythonのSSL
ライブラリでも入れればいいのかと思うのですが、対処方法ご存知のかたがいらしたら教えていただけませんか?


142 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 12:06:32 ]
つttp://www.google.co.jp/search?q=nautilus+svn+python+ssl

143 名前:デフォルトの名無しさん [2009/02/22(日) 13:02:27 ]
>>110
間違ってるってどのへん?

144 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 13:57:52 ]
a.__lt__(self, b) : a < b
a.__eq__(self, b) : a == b
a.__getitem__(self, i) a[i]
a.__hash__(self) : hash(a)
a.__len__(self): len(a)

hashやlenも演算子に類するものと見ればいいんジャマイカ。
実際長さは__getitem__とも密接な関係にあるしね。うっかり
同名のメソッドを定義してアボーンなんてリスクを考えれば
これはこれでありだと思ふ。

145 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 15:53:14 ]
2.6で(まともな)sslモジュールが標準になったけど
中身がCで書かれてて
派生クラスを食ってくれんのが悩み。

146 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 17:11:00 ]
>>145
自分で拡張したい場合は確かに悩みどころだよな。
一方で、標準機能にいろんなものを詰め込んで欲しいと考える人もいるし。
妥協点としては、基本エンジンを簡潔・高速にして、よく使いそうな機能はライブラリで容易するとか。

147 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 17:53:44 ]
暗いなら自ら明かりをつけましょう

148 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 18:46:17 ]
クレクレ厨乙

149 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 18:47:28 ]
誤爆

150 名前:デフォルトの名無しさん [2009/02/22(日) 19:52:09 ]
pythonのlambdaで実験していて、以下の問題に突き当たりました。
識者の方がいらっしゃいましたら、
ご教授願えるとありがたいです。

//無名関数をn個リストにして返す関数
def make_funcs(n):
fn_list = []
for i in range(n):
fn_list.append(lambda x : i*x)
return fn_list

//code block
fL = make_funcs(5)
for f in fL:
print(f(10))

//実行結果
40
40
40
40

//期待する実行結果
0
10
20
30
40

for文中のiが上手く認識されていないように思えます。
Schemeのクロージャとは振る舞いが異なるのでしょうか?




151 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 20:10:18 ]
lambda x, i=i: i*x

152 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 20:27:38 ]
>>150
Pythonでもクロージャは環境をキャプチャするんだが
そのforループではiが逐次破壊的に書き換えられてしまう
(let束縛ではなくset!のイメージ)んでそういう動作になる

単一代入でない&クロージャをサポートする言語で破壊的なループを使って
そういう書き方をすると、そういう動作になるのが普通で、
JavaScriptやPerlなんかもそうなったはず

Pythonでは>>151のような方法で対処できるが、魔術的だと感じられるなら
ループの中でさらにdefで明示的にブロックを作って、その中で
クロージャを作ったりするといいと思うよ

153 名前:152 mailto:sage [2009/02/22(日) 20:34:39 ]
例えばこんな風に書くということね
def make_funcs(n):
    def make_func(i): return lambda x: i * x
    fn_list = []
    for i in range(n):
        fn_list.append(make_func(i))
    return fn_list

もっと短く書く書くこともできる
def make_funcs(n):
    make_func = lambda i: lambda x: i * x
    return [ make_func(i) for i in range(n) ]

154 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 20:54:37 ]
>> 151, 152

非常に分かりやすい説明で、問題の原因が良く理解できました。
また、正しい書き方も分かりました。
ありがとうございました。





155 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 21:13:08 ]
…で、実際処理速度はどうなの?>パイソン
PHPより早いのかな?

156 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 21:19:48 ]
おおむねPython>Perl>PHP>Rubyってとこじゃね?

157 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 21:33:59 ]
shootout.alioth.debian.org/u32/
その手のベンチマークで定番?になってるサイトです。
言語の種類だけでなく、プログラミングの手法によっても結構変わるみたいですね。

158 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 21:47:06 ]
shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=all&box=1

159 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 21:55:27 ]
C++が0.08秒で、PHPが48分って・・・orz
完全にやる気なくした・・www

160 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 22:01:33 ]
>>156
馬鹿じゃない?



161 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 22:03:23 ]
>>142
この回答って
Error : callback_ssl_client_cert_prompt required
これの対処法の回答という認識でいいんですかね・・・?

ググってみたんですがどれが回答になるのか分からなかったんですけど・・・。
そういうレベルの人はここに来てはいけないということですかね??


162 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 22:14:19 ]
>>159
用途に合わせて言語を選ぶ。 当たり前のことじゃないか。

163 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 22:31:45 ]
>>160
なんで?

164 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 22:33:07 ]
>>161
こっちで質問しる
gimpo.2ch.net/esp/


165 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 22:50:42 ]
>>157
python 3 もっとがんがれ
おれもPHPが一番鈍足だとはしらんかった



166 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 22:54:23 ]
>>163
根拠を示さないレス乞食はそっとしてあげて。

167 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 23:04:54 ]
pass

168 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 23:34:42 ]
インタプリタが遅いのは当たり前田のSPAM

169 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 23:37:20 ]
まぁ>>156自体に根拠がないけどね

170 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 23:40:26 ]
まあ・・ウェブならスクリプト言語でも十分ですけどね
2〜3秒以上もかかる計算滅多にないし

確かにベンチマークではpythonの方が良い成績のことが多いみたいだけど
スクリプト言語である以上、ドングリの背比べのような気もしないではない

ただ、pythonってphpに取って代わるメジャーなスクリプト言語になり得るのかな?



171 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 23:41:30 ]
>>158見ると>>156の順番通りだけど?

172 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 23:44:35 ]
>>170
パフォーマンスを気にする必要があるのは、10K問題とかだと思う。

173 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 23:57:17 ]
しっかしPHP6はいつ出るんだ?

WEBはDBへの接続とDB自体の処理速度が一番ボトルネックだと思う。
そこが早ければある程度なら問題ないんじゃないだろうか。

174 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 23:59:41 ]
PHPは(言語)仕様がどうのってよりも、ビジネス戦略で広まってるだけですがな。

175 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 00:02:38 ]
10k問題という言葉・・初めて知りましたw

一万接続なんて、スクリプトじゃむりぽ
…というか、アパッチも無理なんじゃ

176 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 00:02:43 ]
ビジネス戦略って一体何なんだ?

177 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 00:52:54 ]
Python 3.0の変更点を調べていると、

text.world.coocan.jp/TSNET/?What'sNewInPython3.0
> callable関数は削除されました。
>『callable(f)』の代わりに、
>『hasattr(f, '__call__')』が使えます。
> operator.isCallable関数もなくなりました。

とあるのですが、後者の方が書き難いのではないかと思います。
Pythonでは複数のやり方を嫌うという説明を見ました。
しかし、より良いものが残るべきとう意見は分かります。
でも、今回の件は消す必要が無かったのでは?
と思ってしまいます。

皆さんの意見はいかがでしょうか?

178 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 01:01:28 ]
正直 2.x でも callable なんて使ってなかったからどうでもいい。
EAFPってやつだ。

179 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 01:32:36 ]
レスありがとうございます。
EAFPという考え方、初めて知りました。
Googleで調べたら、いろいろ勉強になりました。

そもそもオブジェクトの属性が持つかどうかをチェックするよりは、
try, ecept構文で実行して、例外を補足するスタイルが推奨されているんですね。

180 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 08:03:08 ]
>>175
> 一万接続なんて、スクリプトじゃむりぽ
Erlangなんかの実績はあるよ。



181 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 08:34:59 ]
魚病理学者って何だ?

182 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 09:57:42 ]
pass

183 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 11:36:33 ]
10k問題って西暦で10000年になって桁が増えるときの問題かと思ったぜ

184 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 14:29:48 ]
10種類も苦しいことがあるなんてどんな業界だよ。

185 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 14:42:07 ]
休憩がない、帰れない、給料安い、休暇(取れ)ない、雇用不安定
キリがない、規則が理不尽、経費が自腹、心を病む、過労死

で10kじゃね

186 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 14:51:47 ]
>>185
おいおい、「彼女ができない」 が抜けてるぞ

187 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 14:54:28 ]
「彼女(or結婚)できない」、すっかり忘れてたよ

188 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 20:50:30 ]
Erlangでいけるなら
stackless + libev でいけるだろ、たぶん、きっと

189 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 20:51:29 ]
>>157
これ見ると、概してCよりC++のほうが早いと思って良いのかなぁ。

190 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 21:04:40 ]
>>188
有望ではあるよね。
C10K問題への対策の一つが高次並列化なんだが、stacklessが
変数使い捨てを強化すれば、並列化との相性が良くなる。



191 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 21:08:43 ]
C10K問題対策って普通単にサーバ分散させるだけじゃねえの?

192 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 21:13:41 ]
>>185-191
C10K: >>185 - 規則が理不尽 + 彼女ができない + コーディング規則が理不尽

193 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 21:26:10 ]
>>191
静的コンテンツを同時に多数同時に見てもらうだけの時代はそれで済む事もあったけど、
例えば「10万人同時ログイン&互いに同じ関心を持つ者のグループをダイナミックに」
などとやろうとすると、別の手が必要。

関数型言語が並列化と相性がいいんで、stacklessみたいなのが関数型のいい所を
取り込んでくれるといいな、というのが感想。

194 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 22:06:09 ]
10万人同時ログインってw
GLAYの幕張ライブやないねんからw

195 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 22:14:08 ]
チャットみたいなもんか?
よくわかんねえけど
10万人で一緒にチャットする必要は感じないが……

今の大規模サービスって別にダイナミックコンテンツでも
普通にスケールさせてないか?
勿論サーバ分散させて

196 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 22:38:39 ]
少数のサーバーに集中
     ↓
安価な多数のサーバーに分散するといいぜ
     ↓
でも、物理メンテ大変だし、あんまり安いマシンじゃなくて
ちょっと高級な中グレードのマシンで台数減らした方がよくね?
(イマココ)


197 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 23:08:25 ]
C10K問題の先駆けは既に、Skype、Twitterなどでも出始めてる。
10万人というのは一例で、従来型サービスの延長じゃない事を
スケールさせたい場合の問題の一つ。

198 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 23:44:25 ]
あんまり言語とは関係ない話になってるなw

199 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 00:07:49 ]
10万人同時チャットってwww
忙しすぎw

200 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 11:41:28 ]
ちょっと面白そうだな>10万人チャット



201 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 12:53:56 ]
2chのスレの一番速い流れでスレあたり1000人だもんな。


202 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 13:35:13 ]
人数の多いチャット部屋覗いたことあるが、大半はROM専
数人が発言しまくりで、残りは単発発言の奴かな
余程盛り上がる話題が無いとそんなにログ流れんし
ログが流れる時ってのは会話が成立しない祭状態で
会話したい奴は「特定の相手とのみ会話する機能」使って身内話

203 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 14:17:58 ]
10KのKはKOBITOのK。

204 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 16:40:23 ]
TwitterのPublic Timelineがある意味10万人チャットみたいなものか

205 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 17:50:41 ]
聖徳太子「10Kまで同時通話おk」

206 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 20:37:20 ]
pythonでhtmlを処理しようと思うんだがどういう方法がベターなの?

207 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 20:37:35 ]
>>189
Linusの回答
tabesugi.net/memo/2009/1a.html
オリジナル
lwn.net/Articles/249460/

208 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 20:53:57 ]
C++のそういうネタは好きw

209 名前:デフォルトの名無しさん [2009/02/24(火) 23:45:18 ]
ネストした関数をunittestモジュールで外からテストにかける方法って
ない?

210 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 00:23:43 ]
BeautifulSoupが流行ってる



211 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 01:21:36 ]
>>206
htmlparserってのがあるけど、速度的には正規表現で処理するのがお勧め。

212 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 01:55:50 ]
lxml

213 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 08:37:03 ]
"substandard programmers"が書くCのコードもそれはそれは恐ろしいけどな。

214 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 02:22:46 ]
lxmlが最強って聞いたけどそうでもないの?

215 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 14:51:02 ]
lxmlが最強

216 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 15:21:07 ]
lxmlが速いみたいだよ。どうしてもpure pythonが良いならBeautifulSoupだろうけど。

217 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 20:08:27 ]
人の書いた作例とどう動くかが多数解説されたサイトを教えて下さい
解説サイトの理論を見ても理解できません
つーかPrologしかやったことないです

218 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 20:58:40 ]
>>217
俺はむしろPrologのほうが分からんぜ…。

・ドキュメントのチュートリアルを一通り読む
>>1のまとめwikiにある問題集とドキュメントを照らし合わせながら読む
・とにかく書く

辺りかなぁ。
他の手続き型言語からの人なら
「自分の前に書いてたコードを今の言語に書き直してみる」
ってのも結構有効なのだろうけれど、Prologは毛色が違い過ぎて難しいだろうなぁ…。
特にユニフィケーションをフル活用するようなコードは言語としてサポートしてるPrologのほうが楽だろうし。

小さな練習問題が欲しいなら「練習問題 Python」辺りでググると大量に出てくると思う。

219 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 04:08:54 ]
作例で数が多いとこならcookbook。でも、詳細な解説は期待できないかな。
いろんな人が投稿してるので質はバラバラだけど、
コードをベースに議論したりするので、他よりは割とコメント(解説)多めだと思う。
code.activestate.com/recipes/langs/python/



220 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 08:52:56 ]
generator について一言で言うと何なんでしょうか?



221 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 09:02:06 ]
>>220
魔法

222 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 09:08:31 ]
関数をイテレータ化するための魔法

223 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 14:28:57 ]
今 www.python.jp/doc/2.4/tut/node6.html#SECTION006700000000000000000

4.7.1 デフォルトの引数値 の中の

def f(a, L=[]):
L.append(a)
return L

print f(1)
print f(2)
print f(3)

このコードを打とうとしてたんだけど、eclipseに
「.」ピリオド打つと固まってしまう。
コピペすると落ちないんだけど、直接「.」打つ方法ありませんか?

環境は
Eclipse Classic(SDK)3.4.1
Pydev 1.4.4.2636
Python 2.6
です。

お分かりの方いらっしゃいますか?


224 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 15:04:14 ]
>>223
> 「.」ピリオド打つと固まってしまう。
「.」を入力した瞬間に、メソッド一覧を表示しようとしてると推測。

225 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 15:16:14 ]
>>223
1日ほっとく

226 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 15:37:35 ]
>>223
もっと早いマシン買えよ底辺ドカタ。

227 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 16:00:44 ]
pass

228 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 17:58:08 ]
>>220
遅延リスト

229 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 17:59:40 ]
新しくpythonを勉強する際に、3.0対応の書籍・サイト・マニュアルはありますか?

230 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 18:36:20 ]
>>229
はじめてのPython3
中身読んでないのでどのくらい使えるのかわからんけど。



231 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 19:08:48 ]
www.catonmat.net/blog/better-faster-smarter-python-yesterday-today-and-tomorrow/
inkhorn.org/c-extensions-for-python/

根性 types, object, attributes, method 理解

232 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 22:27:08 ]
んじゃぁ

比較的新しいいい本は?

233 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 01:11:09 ]
西尾さんが書いたJython本だな

234 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 01:34:54 ]
>>229
pc11.2ch.net/test/read.cgi/tech/1235050215/

235 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 01:48:17 ]
>>229
www.amazon.co.jp/dp/4839922829

この本が一番日本語のPython本として一番よく出来ている。
他のがかすんで見えてしまうほどだ。この一冊さえあれば
Pythonについて完璧にマスターできるだろう。

236 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 02:47:46 ]
>>235
その本を買って初心者を脱出したいと思います。
良著紹介ありがとうございました。

237 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 04:00:27 ]
>>236
どういたしまして

238 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 07:30:36 ]
>>235
Python関係ないだろ

239 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 09:29:57 ]
>>238
はあ?
言語自体はPythonだろ

240 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 09:39:32 ]
つか、Jythonってジャイソンって読むのか。ジェイソンだと思ってたw



241 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 09:48:20 ]
爺さんって読むんだよ

242 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 09:48:25 ]
>218-219
thx
パズル感覚でやってみます

243 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 11:55:31 ]
>>239
Jthon本に対するコメントだよ
言語自体はPythonだけどその本に
Python的内容を期待してたら外れ

244 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 11:59:56 ]
>>243
どっちかっつーとありゃJavaの本だ
ターゲット読者の絞込みが中途半端なんだよ
Java使いにとってはJavaのインストールとかEclipseとか
わざわざ説明してるのは馬鹿じゃないかと思う訳で
Python使いにとっては何が嬉しくてわざわざ
Javaインストールしてまで(ry


245 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 12:11:42 ]
CPython から Java を呼び出して使えますか?

246 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 12:30:08 ]
これから槍始める人は3.0かそれ以前をやるべきなのか・・・

247 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 12:40:18 ]
2.5の日本語ドキュメントを利用できて、3.0の雰囲気も味わえる2.6

248 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 13:00:38 ]
Guidoによると2.2の頃に書かれて改訂されたクソ本は買わない方がよいらしいよ。

249 名前:デフォルトの名無しさん [2009/02/28(土) 13:06:40 ]
クイックリファレンス一冊でオケ
ただし古すぎみたいな

250 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 13:19:37 ]
Jython本をいつも推薦してくれるjava-jaの非モテ君ありがとう。



251 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 13:23:38 ]
ジャイソン以外の良本はないのか

252 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 13:30:13 ]
>>249の2.6/3.0対応版がもうすぐ出るよ
ピアソンがんばってくれないかね

253 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 13:49:19 ]
すいませんアドバイスください m__m

コマンドプロンプト上でPythonを実行して
待機秒数を表示させたりする場合、
待機するループ内でprintやsys.stdoutの出力を行うと
データがどんどん流れていってしまうのですが、
それを防ぐ方法はありませんか?

254 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 13:54:03 ]
import sys, time
for i in range(10):
    sys.stderr.write("%d\r" % i)
    time.sleep(1)

255 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 14:00:45 ]
なるほど!!
どうもありがとうございます。

256 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 14:11:28 ]
西尾さんのブログを読むべきだと思うけどな

257 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 14:12:14 ]
>>254
すみません、ピコ秒単位で制御したいのですがどうすればいいんでしょうか

258 名前:スルー力が足りない! mailto:sage [2009/02/28(土) 14:20:02 ]
本人装った荒らし乙。

259 名前:スルー力が足りない! mailto:sage [2009/02/28(土) 14:28:27 ]
>>257
本人装った荒らし乙。

260 名前:258 (!= 259) mailto:sage [2009/02/28(土) 14:38:09 ]
図星だったwww




261 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 15:03:29 ]
       //
     /  /   パカッ
     //⌒)∩__∩
    /.| .| ノ     ヽ
    / | |  ●   ● |     
   /  | 彡  ( _●_) ミ  まピョーん☆
   /  | ヽ  |∪|  /_
  // │   ヽノ  \/
  " ̄ ̄ ̄ ̄ ̄ ̄ ̄(..ノ

262 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 16:24:57 ]
pass

263 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 18:15:08 ]
ぬるぽ

264 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 19:28:41 ]
try:
    ガッ

265 名前:スルー力が足りない! mailto:sage [2009/02/28(土) 23:07:40 ]
except ちんぽ as e:

266 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 23:37:00 ]
俺の息子がexceptionalにepsironってことですね

267 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 15:15:27 ]
SHA-1を計算するのに

f = open(target,'rb)
b = f.read()
f.close()
hashlib.sha1(b)

で計算はできたのですが
これをループを使って複数のファイルに対して行うと
途中でメモリエラーが出てしまいます(OutOfMemoryException)。
強制的にメモリを開放させるようなことはできないでしょうか?

b = ''
というようなこともしてみましたが無駄でした。
環境はIronPython 2.0.0.1、Windows Vista SP1です。


268 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 16:52:43 ]
ttp://d.hatena.ne.jp/a2c/20090228/1235814037

269 名前:デフォルトの名無しさん [2009/03/01(日) 17:04:45 ]
入力されたフォームデータをsqliteでデータベースに溜め込むCGIをPythonで実現しようとしてるんですが
同時アクセスが有った場合にコリジョンを回避するにはどうしたらいいでしょうか?キューにしたいんですが。

270 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 17:07:42 ]
import Queue



271 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 17:16:06 ]
CGIじゃプロセスがそれぞれ異なるから無理でしょ。

あと、SQLiteに書き込むならロックされるはずだから
同時アクセスは気にしなくてもいいと思うよ。

272 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 17:26:26 ]
aritayaki

273 名前:269 mailto:sage [2009/03/01(日) 17:26:54 ]
下げ忘れてた。失礼。
ということは、例外を捕まえてtime.sleep(1)とかやった方がスマートですかね。
アクセスが集中したときは順番ゴチャゴチャになるかもしれないけれど。
マヌケな話で申し訳ないんですがコリジョンを意図的に発生させる方法を教えて貰えますか?
実際に例外出して見ないと不安で。

274 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 18:11:59 ]
sqlite コマンド側からテーブルにロックかけたままにしておいて
CGI実行してみればどう?
タイムアウトはconnect時に指定できる。

あと、タイムアウトが発生してるような状態なら
時間をおいて再実行とかは、あまり意味がないだろう。
すぐにエラーにしてしまったほうがいいと思うけど。


275 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 18:44:49 ]
ちょっと聞いてみたいことがある。

ある辞書の中から、いくつかのキーを持つ要素だけを取り出した部分辞書を作
りたい。

>>> request = {'hoge':1, 'fuga':2, 'piyo':3, ...}
>>> a = {}
>>> for key in ('hoge', 'fuga'):
...   a[key] = request[key]
...
>>> a
{'fuga': 2, 'hoge': 1}

これをもっと簡潔に書く方法は無いだろうか?


276 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 18:58:39 ]
簡潔か微妙な気もするけど

dict([(key, request[key]) for key in ('hoge', 'fuga')])

277 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 19:15:26 ]
リスト内包表記を map にしてみた。

dict(map(lambda x: (x, request[x]), ('hoge', 'fuga')))
なんだこの微妙さは。


278 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 19:37:35 ]
dict([(x,request[x]) for x in request if x in ('hoge', 'fuga')])

279 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 19:41:54 ]
英語的な連中には
コレが構文的に分かりやすいのかね?


280 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 20:28:58 ]
内包表記って便利といえば便利だけど
python の魅力・長所である、
「記述内容が形(インデント)で見える」って
ところを完全に無視しているのが何と言うか…



281 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 21:16:08 ]
え?内包表記、読みやすいじゃん・・・
トリッキーなことやりすぎるとあれだけど。


282 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 21:17:53 ]
forの左に書けるのが文だけで式が書けないから色々微妙なことをしないといけなくなる

283 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 21:24:04 ]
>>280
個人的には内包表記は「記述内容が形で見える」ものの最たるものだと思うなあ。

Z = [(x / y if y != 0 else None) for x, y in zip(X, Y)]

となっていたら Z はリストで要素は x / y か None だということが一目で分かるから。

たぶん問題なのは内包表記を入れ子にすると一気に難読化するということかと。
個人的には入れ子にして読みにくくなるぐらいならバラして for 文なりにするかな。

284 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 22:10:34 ]
276と277の比較なら276のが読みやすい。

285 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 22:24:53 ]
>>276-278共通して
('hoge', 'fuga')
なんだけど
['hoge', 'fuga']
じゃだめなの?


286 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 22:34:59 ]
偏向する必要がないならタプルを使う。

287 名前:269 mailto:sage [2009/03/01(日) 23:05:54 ]
じゃ俺はちょっと違った切り口で。
>>276とほぼ一緒だけどfilter使えばコメント無くても何やってるか分かりやすい。
あとrequestに無いキー持ってこようとしてもエラー吐かない。

request = {'hoge':1, 'fuga':2, 'piyo':3}
def f(x): return x in ('fuga','hoge')
dict([k,request[k]] for k in filter(f,request))

288 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 23:44:01 ]
遅くね?

289 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 23:46:22 ]
dict([k,request[k] if k in request else None] for k in ('fuga','hage'))

290 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 23:54:14 ]
dict{[(k, v) for k, v in request.items() if k in ('fuga','hoge')]}

3.xであれば

{(k, v) for k, v in request.items() if k in ('fuga','hoge')}



291 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 23:57:35 ]
ごめん、↑のdict{}はdict()だ

292 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 00:10:11 ]
見つからないkeyは結果からは無くなった方が良いのかな

293 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 00:14:25 ]
部分辞書だからな

294 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 09:44:29 ]
ttp://blog.livedoor.jp/dankogai/archives/51183459.html

>本書を見てびびった人は、以前紹介した「実践Python」を薦めておく。

勧めるなよ(wwwwWwwWwwwWWwwww


295 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 09:56:50 ]
この本が一番いいんだけどな
www.amazon.co.jp/dp/4839922829

296 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 10:00:33 ]
っ ttp://blog.livedoor.jp/dankogai/archives/51040648.html

子飼が紹介するとクソ本認定?

297 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 15:22:57 ]
Windowsにpythonインストールしたら
付属でついてるpython editorのデバック環境が充実してておどろき
しかしemacs key-bindになれてるからemacs ぽく使える環境で便利なのないでしょうか?
emacsのpython.elはbreak pointの設定が右クリック一発でできなくて使いにくい

298 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 15:50:51 ]
>>294
その本出版社が潰れて買えなくなってるよ。

299 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 16:08:32 ]
>>297
じゃぁ右クリック一発でできるように改造すれば?


300 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 17:00:12 ]
どうみてもクソ本認定です
本当にありが(ry



301 名前:デフォルトの名無しさん [2009/03/02(月) 17:06:56 ]
age

302 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 17:08:06 ]
>>297
xkeymacs入れてしまえ

303 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 21:22:48 ]
hoge.__setitem__(key, value)

無理やりreduceで書くなら例えば
reduce(lambda d, x: d.__setitem__(x, request[x]) or d, ['hoge','fuga'],{})
こんな書き方になると思うけど、Python使いはこの例を普通こんな風には書かない

dict((k, request[k]) for k in ['hoge','fuga'])
のほうがずっと素直で短く読みやすいからね

304 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 23:26:46 ]
はぁ?

305 名前:デフォルトの名無しさん [2009/03/02(月) 23:35:41 ]
複素演算の構文調べてたら、とあるSEの書いたブログが引っかかったが
そこのサンプルはNameErrorとTypeErrorの出力ばっか張ってあって役に立たなかった

306 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 00:07:05 ]
reduce とか lambda とかそのうちなくなるだろ。

307 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 00:34:39 ]
それはそうかもしれないけど、3.0を生き残ったことで想定寿命は激延びな希ガス

308 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 00:51:03 ]
lambdaって無くなるのかな

309 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 01:08:45 ]
>>297
IDLEのこと?
OptionsのConfigure IDLEを開いて、KeysでClassic Unixにすれば
C-aで行頭とかになるよ。
C-x C-s みたいなキーシーケンスもできる。

310 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 01:29:17 ]
lambdaの中で代入とか複数の文とか出来るようになるのはいつ?



311 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 01:52:36 ]
mapとfilterは最悪消えてもリスト内包表記で書けるけど
reduceって代用あるっけ?

312 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 01:54:42 ]
どっちみちreduceはfold_left相当でfold_rightはないし
unfoldもないけどな

313 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 01:56:01 ]
>>310
つーか全部式にしてほしいという発想にはならんのか
文が存在する関数型言語ってあるっけ

314 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 04:53:23 ]
Haskellのwhereって式?

315 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 08:02:01 ]
⊂二二二( ^ω^)二⊃

316 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 09:02:51 ]
>314-315
ナ、ナンダッテー>ΩΩΩ

317 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 09:53:35 ]
Haskellのwhereはcase式の一部
ttp://www.haskell.org/onlinereport/exps.html#sect3.13

318 名前:デフォルトの名無しさん [2009/03/03(火) 12:15:02 ]
ttp://www.atmarkit.co.jp/club/print/print.php

319 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 12:54:49 ]
ttp://www.oreilly.com/catalog/covers/twistedadn.s.gif
この本の日本語版ってありますか?

320 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 13:34:23 ]
>>245
JCC



321 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 14:53:57 ]
>>319
この表紙は人を選ぶな…

322 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 16:16:11 ]
>>321
俺も初めて見たときはこれはさすがにどうかと思ったよ

323 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 16:23:05 ]
>>319
> ttp://www.oreilly.com/catalog/covers/twistedadn.s.gif

グロ
閲覧注意


324 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 17:39:28 ]
ただの模様じゃん
なんも樹に成らん

325 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 23:36:22 ]
俺は樹になる

326 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 01:06:21 ]
カバーをひっくり返して、好きな絵を描くといいよ。

327 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 07:15:06 ]
へび(そのものあるいはその絵)を嫌うひとは心理的に

328 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 09:21:27 ]
そもそも蛇嫌いはpythonでアウトな気がする。

329 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 12:36:48 ]
Python の由来は Monty Python であって、ヘビは関係ないと Guido は言って
たんだがなー。まあ O'Reilly の表紙にパイソンズ出すわけに行かないか。


330 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 17:52:34 ]
>>329
Guido的には、元ネタ的にはそうなんだが
オライリーのPython本の絵が蛇になっちゃうのはそりゃ仕方ないよなーってことで
諦めた(受け入れた)、みたいな感じだったかと



331 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 18:34:07 ]
日本語版はおっぱいでおk

332 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 20:03:47 ]
>>331
エロ本コーナーに並びそうだな。

333 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 21:15:19 ]
ジャイソンかサイソン
   どっち?

334 名前:デフォルトの名無しさん [2009/03/05(木) 15:44:46 ]
get 333

335 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 17:29:58 ]
ttp://www.python.com

336 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 18:16:01 ]
Firefoxでアドレスバーにpythonと打つとpython.jpにつながるのでそれを期待して古いMozillaでやったら
大学のワークステーションでpython.comにアクセスしてしまったでござる

337 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 02:04:38 ]
アイコンの蛇って名前とか付いてないの?

338 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 02:11:47 ]
やっぱ時代はRubyだよな

339 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 02:33:09 ]
ぱいちんこ

340 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 14:43:06 ]
>>336
俺も間違えたことあるw
.comのほうは海外のエロサイトなんだよな



341 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 15:47:07 ]
間違えてwww.goo.co.jpを開いちゃったみたいな感じか

342 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 18:31:59 ]
Webポータルのハズがクルマ、はまだ良いだろ
python〜の場合、技術資料のハズがエロサイトだぜ?
自宅で誰も居ないなら別に良いが、会社や学校、家族の目の前で間違えた時は…

343 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 18:38:36 ]
>>342
いや、goo.co.jpもエロサイトだったんだが(今は無いが)

344 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 23:17:06 ]
>>335
我が家でBフレッツ導入した時に、「セキュリティ対策ツール」という名前で
マイクロトレンドのOEMでウイルスバスター相当のセキュリティソフトが
1ユーザ分ついてくるのだが、このサイト、しっかりと、プロックしてくれました。
めんどくさいので、プロック解除してまでみたいとは思わん。

345 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 00:24:10 ]
こういうアドレスを買収しようとしたら
いくらぐらいかかるんかね


346 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 01:37:51 ]
2万円

347 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 11:26:51 ]
既に取られてるドメインは2万じゃキツかろう
逆にまだ取られてないドメインならもっと安いが

348 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 21:48:43 ]
3万円

349 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 22:37:25 ]
逆にまだ取られてないドメインなら買収とは言わん罠

350 名前:デフォルトの名無しさん [2009/03/08(日) 10:16:38 ]
def f(hoge=3, fuga=7):
print (hoge, fuga)
または
f = lambda hoge=3, fuga=7: print (hoge, fuga)
という関数に対して
d1 = {'fuga': 8, 'hoge': 4}
という辞書で
f(**d1)
を実行すると期待通りになるのですが
d2 = {'kane': 1, 'fuga': 8, 'hoge': 4}
という辞書で
f(**d2)
を実行すると'kane'が無いと怒られます
どうすればうまくいくのでしょう



351 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 10:19:53 ]
訂正します

誤 f = lambda hoge=3, fuga=7: print (hoge, fuga)
正 f = lambda hoge=3, fuga=7: (hoge, fuga)

352 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 15:09:33 ]
def f(hoge=3, fuga=7, **kwargs):
  print (hoge, fuga)

353 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 15:49:40 ]
eval("foo(param)")
はうまく動くのに
eval("bar.foo(param)")
が動いたりうごかなかったり
特に

#file a.py
def f():
eval("bar.foo(param)")

#file b.py
a.f()

としたときに動いてくれない

354 名前:デフォルトの名無しさん [2009/03/08(日) 16:59:02 ]
質問してるのか、
問題を喚起しているのか、
ツンデレなのか、
はっきりしなさい!

355 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 17:39:14 ]
eval関係無く動くまい

356 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 18:00:41 ]
ツンデレです

357 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 20:43:28 ]
適切に sys.path.append していないと予想

358 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 01:13:08 ]
通常の仕事にevalなんて使う事ないなぁ。
皆どんな高度なことやってるの?

359 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 01:32:46 ]
アプリのコマンドライン。
emacsだとM-xに相当か。
制作中はアプリ自身のデバッグにも使える。

360 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 14:10:34 ]
>>353
#a.py
class Handletest:
def handle(self, methodstr):
result=eval(methodstr,globals(),locals())
return result

if __name__ == "__main__":
import numpy
handletest=Handletest()
print handletest.handle("numpy.linalg.norm([1,2])")#動く




#b.py
import numpy
import a
if __name__ == "__main__":
h= a.Handletest()
print h.handle("numpy.linalg.norm([1,2])")#動かない
-------------
golbals localsに違うものいれないといけないみたいなのだけど
どう入れればいいのかわからない



361 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 17:10:33 ]
print h.handle("import numpy; numpy.linalg.norm([1,2])")

362 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 18:39:03 ]
h.handle("numpy.linalg.norm([1,2])", globals(),locals())
h.handle("numpy.linalg.norm([1,2])", {"numpy":numpy}, {})

363 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 19:35:25 ]
>>360
bでimport numpyしただけだと
bからはnumpyという名前が見えるが
aからは見えないのさ

importはインタプリタにモジュールをロードするだけでなく、
カレントのモジュールにシンボルをインポートするという意味を持っている

364 名前:363 mailto:sage [2009/03/09(月) 19:47:41 ]
こんだけじゃ説明足りんかな
Pythonのグローバル変数(グローバル環境フレーム)ってのは
インタプリタグローバルじゃなくて、モジュールスコープで別れてるんだよ

モジュールのトップレベルの束縛=グローバル変数
だと思っていい
globals()関数が返すのも、あくまで「そのモジュールの」グローバル変数

365 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 20:55:55 ]
>>353
#a.py
class Handletest:
def handle(self, methodstr):
import numpy
result=eval(methodstr,globals(),locals())
return result

if __name__ == "__main__":
handletest=Handletest()
print handletest.handle("numpy.linalg.norm([1,2])")

366 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 21:40:14 ]
import sys
class Handletest:
    def handle(self, methodstr):
        frame = sys._getframe(1)
        return eval(methodstr, frame.f_globals, frame.f_locals)

367 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 22:01:48 ]
sys._getframeを呼び出してるメソッドは継承すると酷いことになる

368 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 10:49:07 ]
ウーパールーパーって食えるんだな
ttp://www.fnn-news.com/news/video/wmv/sn2009030908_hd_300.asx

369 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 23:18:16 ]
おまえら、金融系とか経済系の
ゲーム作るプロジェクトやりたい?

370 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 23:33:20 ]
>>369
自分で勉強しろ



371 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 23:51:17 ]
やりたい

372 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 23:56:48 ]
プロジェクトというからにはキッチリドキュメントがそろってるんだろうな?

373 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 00:01:34 ]
>>370
どっちの意味?

プログラムを勉強しろっていみ?
それとも、金融知識を勉強しろっていみ?

374 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 00:04:55 ]
>>371
金融系のプロジェクトでプログラマー募集したら、
なぜか応募してきたのがpythonのプログラマーなんだよね。

他にも自分が見聞きしてる範囲内で、
「学校を作ろう」とかいう、ふざけたプロジェクトに応募
してたのもpythonのプログラマーだったし、ひょっとして
pythonって、せっかく学んでも、いじるアプリがないから
参加するプロジェクトを探してる状態なんじゃないかなーって
思ったわけだ。

もしこれがPHPだったら、wordpressはあるし、joomlaはあるし、
phpbbはあるし、mediawikiはあるし、で、いくらでもアプリも
プロジェクトもあるし、いじり倒すおもちゃは豊富にあるしで、
プルグラマー募集してもきてくんないんだよね。

でもpythonだったら、いじるおもちゃがない状態だから、
プログラマーが余っていて、わりかし捕獲しやすい
状態なのかなと。

375 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 00:08:59 ]
>>374
学校を作ろうを馬鹿にするな!!

376 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 01:13:02 ]
すまんが、真面目な話してるんだ、馬鹿は黙ってくれないか

377 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 01:20:54 ]
そりゃphpなんかと比べてしまえば
pythonを存分に使わせてもらえるところは少ないだろうね

378 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 01:36:52 ]
そもそもPythonはRubyより劣るからな。利用価値がまったくない。

379 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 01:41:20 ]
仕事でゲーム作る人募集って事?

380 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 02:25:34 ]
>>379
Rubyは優秀だからな。



381 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 02:49:52 ]
面白そうならなんでもやるぜ

382 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 03:00:21 ]
ドモホルンリンクルの計測なんてどうだ

383 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 06:49:10 ]
>>377
phpは優秀だからな。

384 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 17:52:44 ]
ja.uncyclopedia.info/wiki/Python
わろた

385 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 08:31:02 ]
日本語のプロジェクトじゃなければ結構あるんじゃね

386 名前:デフォルトの名無しさん [2009/03/12(木) 13:19:39 ]
はじパイの第2版が中古で売ってたんだけど今のバージョンって3.0なの?
第2版は2.3までだからもうちょっと新しいのかったほうがいい?

387 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 13:57:08 ]
>>386
個人的には2.4以降じゃないと嫌だなw
generatorなくてなんのPythonよ

388 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 01:55:16 ]
UNICODEの扱いがちゃんと載ってるのにしなよ

389 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 02:56:44 ]
JapaneseCodecsがあれば10年は戦える

390 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 13:40:57 ]
Windowsで、2.5.2使ってるんだが、code(codeop)の動きがどうもおかしいんだ。

普通にコンソールでは、u''が使えるんだ。

>>> 'あ'
'\x82\xa0'
>>> u'あ'
u'\u3042'

だけど、InteractiveConsoleを使うと、

>>> import code
>>> code.InteractiveConsole().interact()
Python 2.5.2 (r252:60911, Mar 27 2008, 17:57:18) [MSC v.1310 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> 'あ'
'\x82\xa0'
>>> u'あ'
u'\x82\xa0'

と、u''を正しくdecodeしてくれない。

どうもcodeop.compile_CommandCompilerがこういう動作をしているようで、
IPythonでu''が化けるのも同じ原因のようだ。
Windows版のコンソールは、何か特別なパッチが当たってるんだろうか。
どこか設定をいじってやればコンソールと同じ動きするんだろうか。

まぁunicode('あ')とか書けばいいんだけどなんかくやしい。




391 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 13:54:02 ]
>>390
2.6.1 amd64 で、 code.InteractiveConsole() では上手く動いたよ。
それでもIPythonはダメ。

392 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 14:49:33 ]
>>391
2.6.1でやってみた。

>>> 'あ'
'\x82\xa0'
>>> u'あ'
u'\u3042'
>>> import code
>>> code.InteractiveConsole().interact()
Python 2.6.1 (r261:67517, Dec 4 2008, 16:51:00) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> 'あ'
'\xe3\x81\x82'
>>> u'あ'
u'\u3042'
>>> unicode('あ')
Traceback (most recent call last):
File "<console>", line 1, in <module>
UnicodeDecodeError: 'cp932' codec can't decode byte 0x82 in position 2: incomplete multibyte sequence
>>> unicode('あ', 'utf8')
u'\u3042'

なぜUTF-8www

2.5でも、codeop.CommandCompilerにunicode渡すとこんな動きになるんで、
ようするに2.6ではraw_inputがunicodeを返すようになっただけでCommandCompilerの挙動は変わってないみたいだ。
IPythonは、渡す前にsys.stdin.encodingでencodeしてるので、2.5と同じ動きになる。

コンソールで使ってるCommandCompilerの正体はいったいどこにあるんだ!?
ソースを読めばいいんだろうが、どこを読めばいいのかすら分からん。

393 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 15:00:15 ]
【Python】Pylons Web Frameworkスレ
pc11.2ch.net/test/read.cgi/php/1236858951/

394 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 15:03:12 ]
組み込みのcompileを使うと問題がよく分かる。

>>> exec compile("'あ'", '<input>', 'single')
'\x82\xa0'
>>> exec compile("u'あ'", '<input>', 'single')
u'\x82\xa0'
>>> exec compile(unicode("'あ'"), '<input>', 'single')
'\xe3\x81\x82'
>>> exec compile(unicode("u'あ'"), '<input>', 'single')
u'\u3042'
>>>

どうしろってんだ・・・

395 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 15:57:47 ]
あんまりいい方法ではないと思うけど

import code
import sys

class MyInteractiveConsole(code.InteractiveConsole):
  def __init__(self, *args, **kw):
    code.InteractiveConsole.__init__(self, *args, **kw)
    self.__compile = self.compile
    self.compile = self.mycompile
  def mycompile(self, source, *args, **kw):
    if sys.stdin.encoding:
      if isinstance(source, unicode):
        source = source.encode(sys.stdin.encoding)
      source = "# coding: %s\n%s" % (sys.stdin.encoding, source)
    return self.__compile(source, *args, **kw)

if __name__ == "__main__":
  MyInteractiveConsole().interact()

396 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 16:15:11 ]
>>395
それだと、結局最初の(2.5の)

>>> 'あ'
'\x82\xa0'
>>> u'あ'
u'\x82\xa0'

って挙動になるだけだよね。



397 名前:391 mailto:sage [2009/03/13(金) 16:23:50 ]
なおした
ttp://dsas.blog.klab.org/archives/51390187.html

398 名前:395 mailto:sage [2009/03/13(金) 16:33:49 ]
>>396
自分の環境(Windows)では2.5, 2.6でも↓のようになるのを確認したけど、ならない?
(MyInteractiveConsole)
>>> 'あ'
'\x82\xa0'
>>> u'あ'
u'\u3042'

399 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 18:55:32 ]
ならない
sys.stdin.encoding

どこでも同じとは限らない

400 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 19:57:05 ]
>>397
うん、それでsys.setdfaultencoding("utf-8")すれば使えるようにはなるんだ。
でもそれだとWindows環境でpysh使ったとき、にほんごファイル名が通らなくなる。(UTF-8に変換されるため。)

UTF-8Cygwin使う、ってのも一長一短だしなあ…



401 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 19:58:11 ]
>>398
ならないなあ…
環境設定でなんとかなるのなら是非教えてほしい

402 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 20:42:48 ]
>>400
sys.setdefaultencoding('utf-8') するのは何故?
>>397 の修正だけで、全く問題ないよ?
/open u"ソ.txt"
こんなのも余裕。

403 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 21:01:23 ]
>>397の修正だとcp932の環境でstrの'あ'が'\x82\xa0'になって欲しいところ
utf8の'\xe3\x81\x82'になっちゃう

404 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 21:12:13 ]
>>403
なるほど。日本語をcp932でstrで使うなんて発想が無かった。
from __future__ import unicode_literals
して、strと決別しちゃえ。

405 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 10:25:26 ]
>>402
>sys.setdefaultencoding('utf-8') するのは何故?
cp932だとunicode('あ')でエラーになるからじゃないか?

406 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 11:20:45 ]
>>405
もともとの defaultencoding は ascii
インタラクティブシェルじゃなくて普通のスクリプトでも unicode('あ') はエラー。

Python3.0からは utf-8 になるから、from __future__ import ??? でやってることと
同じといえるかもしれないけど。

407 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 12:17:23 ]
>インタラクティブシェルじゃなくて普通のスクリプトでも unicode('あ') はエラー。

馬鹿ですねわかります

408 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 12:17:35 ]
普段はmbcs,cp932あたりをsys.setdefaultencodingしてるんでしょ、きっと

409 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 12:31:56 ]
ttp://fettig.net/images/twisted%20cover.gif
この本の日本語版っていつ頃出ますか?

410 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 12:53:32 ]
>>409
このイラストはスパゲティコードの暗示なのか…?



411 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 13:22:22 ]
MLで翻訳の需要あるか聞かれてたやつだっけ?
とても微妙な反応だったなw

412 名前:406 mailto:sage [2009/03/14(土) 15:17:31 ]
>>407
何が? u'あ' はOKだけど、 unicode('あ') は
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 0: ordinal not in range(128)

>>408
それをさせないように、普通は del sys.setdefaultencoding してあって、
reload(sys)
sys.setdefaultencoding('utf-8')
とかしないと初期値のasciiから変更できないのに、、、

みんなUnicodeはきちんと使おうぜ。外部とのやり取りは encode/decode して、リテラルで使うときは
unicode('ほげ', 'utf-8') じゃなくて u'ほげ' が正解だ。

413 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:10:21 ]
あまりreload(sys)は流行らせるなよ

>>409
twistedは処理がボコボコ切られて正直使いにくいからこれ以上流行って欲しくないなあ

414 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:16:10 ]
>>413
eventletマンセーですねわかります

415 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:16:32 ]
>>408
pyshを長いこと使ってるから
sitecustomize.pyにsys.setdefaultencoding('cp932')と書いて
リテラルはunicode('あ')と書くスタイルが染みついてるw

utf-8にするとマジック関係が動かないからなあ・・・

[C:Documents and Settings/Administrator]|2> cd デスクトップ
[Error 2] 指定されたファイルが見つかりません。: '\xe3\x83\x87\xe3\x82\xb9\xe3\x82\xaf\xe3\x83\x88\xe3\x83\x83\xe3\x83\x97'

IPythonのソースに手を入れたついでに、マジック関係のユニコード化もするか。

とまで考えたところで、なんというか進む方向が酷く間違っている気がしてきたが目をつぶってがんばる

416 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:50:36 ]
つーわけでユニコード化マジックコマンド。

--- C:/Python25/Lib/site-packages/IPython/iplib.py.bak Sat Mar 14 20:41:18 2009
+++ C:/Python25/Lib/site-packages/IPython/iplib.py Sat Mar 14 20:36:39 2009
@@ -936,6 +936,8 @@
valid Python code you can type at the interpreter, including loops and
compound statements. It is added by IPython to the Python builtin
namespace upon initialization."""
+
+ arg_s = unicode(arg_s, 'utf-8')

args = arg_s.split(' ',1)
magic_name = args[0]
@@ -2019,7 +2021,7 @@
# this allows execution of indented pasted code. It is tempting
# to add '\n' at the end of source to run commands like ' a=1'
# directly, but this fails for more complicated scenarios
- source=source.encode(self.stdin_encoding)
+# source=source.encode(self.stdin_encoding)
if source[:1] in [' ', '\t']:
source = 'if 1:\n%s' % source

デフォルトエンコーディングをutf-8にする必要はない(compilerにユニコードを食わせたときにutf-8化するのはデフォルトエンコーディングとは関係がない)。

[C:Documents and Settings/Administrator]|1> cd デスクトップ/
[C:Administrator/デスクトップ]|2>


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 ]
構造体の代わりだったら辞書で十分でないの?

518 名前:デフォルトの名無しさん mailto:sage [2009/03/28(土) 02:36:55 ]
辞書は順番保持しないじゃん
名前つきタプルなら代わりになりそうだが

519 名前:デフォルトの名無しさん mailto:sage [2009/03/28(土) 05:51:36 ]
名前で参照出来るなら順番はどうでもいいことが多いが

520 名前:デフォルトの名無しさん mailto:sage [2009/03/28(土) 12:29:38 ]
↑(笑)



521 名前:デフォルトの名無しさん mailto:sage [2009/03/28(土) 13:49:47 ]
**kwargsを知らんのだろ
あるいはJavaユーザーが流れてきたか

522 名前:デフォルトの名無しさん mailto:sage [2009/03/28(土) 16:51:05 ]
>>516
『Google公布新项目将改进Python的性能 』
opensourcechina.blog92.fc2.com/blog-entry-122.html

中華なイパネマ経由で把握した
うん…いやなんでもないんだ…

code.google.com/p/unladen-swallow/wiki/ProjectPlan (中段辺り
Note that many of the areas we will need to address have been
considered and developed by the other dynamic language
implementations like JRuby, Rubinius and Parrot, and in particular
other Python implementations like Jython, PyPy, and IronPython.
In particular, we're looking at these other implementations for
ideas on debug information, regex performance ideas, and generally
useful performance ideas for dynamic languages. This is all fairly
well-trodden ground, and we want to avoid reinventing the wheel
as much as possible.

523 名前:デフォルトの名無しさん mailto:sage [2009/03/28(土) 18:57:48 ]
>PyPy Status Blog
この名前はどうにかならんのか
日本で流行らない一因だ

524 名前:デフォルトの名無しさん mailto:sage [2009/03/28(土) 19:05:09 ]
読み方はパイパイ?

525 名前:デフォルトの名無しさん mailto:sage [2009/03/28(土) 19:27:53 ]
docs.python.org/tutorial/controlflow.html#keyword-arguments
keyword argument があると method の overload

www.math.tu-berlin.de/polymake/index.html#perl/overload.html[3,3,1]
が楽になるけど、ないと引数の順番を呼び出すときに絶えず
確認しなければならず、めどい => IDEに丸投げする

526 名前:デフォルトの名無しさん mailto:sage [2009/03/28(土) 23:46:43 ]
中華なパイパイ

527 名前:デフォルトの名無しさん mailto:sage [2009/03/29(日) 03:25:03 ]
桃白白を馬鹿にするな

528 名前:デフォルトの名無しさん mailto:sage [2009/03/29(日) 22:25:13 ]
Pylonsスレまた落ちてるね

529 名前:デフォルトの名無しさん mailto:sage [2009/03/29(日) 23:47:03 ]
そういや、pylonsのメーリングリスト誰か管理しろよw

530 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 02:51:22 ]
初心者なんですが、特に使いたいフレームワークがないので3.1使ってもいいですよね?
柴田とかいう人の影響を受けている人の意見はいらないです。



531 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 04:51:33 ]
誰かの影響を受けたくないとか言うなら自分で決めろよ

532 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 05:15:42 ]
>>530
初心者なら2.6にしとけ

533 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 07:15:24 ]
名無しの影響を受けるのは平気ってのがすごい

534 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 07:21:35 ]
自称初心者が突然柴田とか言いだす背景にはいったい何が

535 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 08:10:10 ]
>>530
初心者が、Webに転がってる大量の情報や本が信頼できない環境でプログラム書けるの?
言語のUpdateに伴って標準ライブラリにも一部不整合があるけど大丈夫なの?

玄人でも Python3 を日常的に使うのはためらうんだ。初心者は手を出すな。
Python3 が一般人に薦められるようになるには、最低でも3年はかかる。

536 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 12:44:49 ]
>>530
3.1に取り組んでおくのもいいと思いますよ。

取り急ぎ。

537 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 13:01:20 ]
別に取り急ぐようなことでもないのにw

# あくまで俺は>>536に言ったわけで

538 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 13:33:58 ]
もしかしてこの本の著者か?
ttp://www.kohgakusha.co.jp/books/detail/978-4-7775-1419-9
最悪だな

539 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 13:51:02 ]
柴藤?

540 名前:デフォルトの名無しさん [2009/03/30(月) 14:18:58 ]
そもそも。日本語の入門書よんで勉強するなんて馬鹿げてる…
情報古いし、内容も薄いし…

stardictとか入れて、日本語以外のMLとか
配布されてるマニュアルよめばいいじゃん。

英語も勉強できて一石二鳥だよ




541 名前:530 mailto:sage [2009/03/30(月) 14:48:59 ]
そのパクリタイトルの著者も評判悪いですね。
ぼくの周りでは。
そうですね。日本語やめます。
今日から英語でやります。

542 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 15:33:26 ]
えっ?、アドバイス言ってくれる人が周りにいたの?

543 名前:530 mailto:sage [2009/03/30(月) 15:39:30 ]
ぼくはそんなこと書いていませんよ^^
stardictといえばキングソフトが丸パクリしてますよね
どーでもいいーですな

544 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 19:53:05 ]
知恵が無いのに自意識を大事にしすぎ

545 名前:デフォルトの名無しさん [2009/03/30(月) 21:09:13 ]
www.itmedia.co.jp/enterprise/articles/0903/30/news079.html

Unladen SparrowはGAEのために作ってたのか

546 名前:530 mailto:sage [2009/03/30(月) 23:26:50 ]
知恵がないってどうやって判断できるんでしょうなあ
ほんとにプログラマかこいつら

547 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 23:33:20 ]
>>530は柴田をネタにして話題を作り、そこからただ荒らしをしたいだけの人と読んだがどうか。

548 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 23:35:42 ]
柴田はツッコミ所を減らしてもっと殺伐とすべき

549 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 23:45:13 ]
>>546
どうやっても何も、相手の知恵は相手の言動から判断するのが普通だよ。知らないの?

まぁお前風に言えば、「レスアンカーも無いのにお前が言われたとどうやって判断したの?」とか、
「一人の言い分を読んでどうしてそこから“こいつら”と複数への疑問に繋げるの?」とかが
モロ突っ込み所なわけで、その辺の「間抜けな割に上からモノ言いたがる」ところがまさに>>544の通り。

550 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 23:46:43 ]
おまえらスルーしろよ

退避スレ
pc12.2ch.net/test/read.cgi/tech/1232055225



551 名前:530 mailto:sage [2009/03/31(火) 00:35:14 ]
>>549
なんかよくわからんがそれでいいと思うよ。
IDない板は嫌いなんだよなー
しらんが。

552 名前:530 mailto:sage [2009/03/31(火) 00:37:54 ]
退避してもIDがないとか、ほんきで馬鹿馬鹿しい。
荒れないところに、才能は集まらないんだよなあ。
だからここも駄目ー。ハッカー頑張ってねー^^

553 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 00:41:38 ]
ハッカーはこんなレベルの低いとこ見てないよ

554 名前:530 mailto:sage [2009/03/31(火) 00:45:03 ]
そうなのか。
質問する場所も考えないとなあ^^
うんこして寝ます

555 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 00:47:08 ]
モテなそう。

556 名前:デフォルトの名無しさん [2009/03/31(火) 00:49:52 ]
ふつーにモテるよ

557 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 00:56:44 ]
アホのくせにプライドばかり高くてモテるわけないだろ(wwWwwwWWWwww
早く寝て布団でクソしろ(w

558 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 01:39:20 ]
Djangoスレに来てるのこいつかw

559 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 01:40:09 ]
アホでプライド高くても女は寄ってくる。
俺には寄ってこないけどなー

560 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 02:48:28 ]
2次元でいいだろ。



561 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 09:03:28 ]
じゃあ俺は次元で

562 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 10:13:53 ]
>>558
ダンジョーと愉快な仲間たち(w

563 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 12:58:10 ]
Windows上でLinuxサーバー用にモジュールをビルドするにはどうすればよいですか?

564 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 13:09:47 ]
VMWareでも使えば?

565 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 13:15:45 ]
やっぱり何かしらの方法でえLinux使うしかないかー。
ありがとうございました。

566 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 14:24:36 ]
草民とも今日でお別れ

567 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 14:56:27 ]
クロスコンパイルすれば出来るけど、
coLinuxでもVMWareでも使った方が良いと思う。

568 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 16:06:08 ]
柴田って人は随分人気があるんだなぁ

ttp://d.hatena.ne.jp/perezvon/20090221/1235195240






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<114KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef