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


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

Pythonのお勉強 Part37



1 名前:デフォルトの名無しさん mailto:sage [2010/03/13(土) 16:59:28 ]
Pythonオフィシャルサイト
www.python.org/
日本Pythonユーザ会
www.python.jp/Zope/
まとめWiki
python.rdy.jp/
関連スレ
find.2ch.net/?BBS=ALL&TYPE=TITLE&STR=python
前スレ
pc12.2ch.net/test/read.cgi/tech/1264924208/

175 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 12:38:20 ]
つまり、防御的に書かない書き捨てコードの
...
n = int(s)
...

に対して、
...
if not int_parsable(s): ....
n = int(s)
...

と一行はさむだけで防御的になるわけだ


176 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 12:52:46 ]
仕事しろよこの穀潰しが

177 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 12:54:36 ]
>>174
デフォルト値で良い場合は >>51 で良いし、
例外メッセージを書き換えたい場合は

def int_parse(s, msg):
    try:
        return int(s)
    except Exception:
        raise HogeException(msg)

とした方が良いな。
このあたりはアプリケーション毎に違うんだから自分で書いたらいい。

178 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 14:31:51 ]
春休みになるとここまで雰囲気が変わるのかよ

179 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 14:34:58 ]
社内ニートも加わってさらにひどいことに.

180 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 15:26:30 ]
つーか、まだやってたのか

181 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 15:40:43 ]
質問です。

Pythonのコマンドラインを起動して、「3+4」と入力すると「7」が帰って来ます。
この「7」って__doc__とか__name__のどこかに格納されているのでしょうか?

また、「7」の型を判定することは可能でしょうか?

182 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 15:44:04 ]
何が聞きたいのかさっぱりわからん

$ python
Python 2.6.4 (r264:75706, Jan 25 2010, 09:01:01)
[GCC 4.4.2 20091208 (prerelease)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 3+4
7
>>> _
7
>>> type(_)
<type 'int'>
>>>

183 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 15:50:08 ]
#型の判定
isinstance(7,int)
True
isinstance("7",int)
False
#数値型に変換できるかの判定
"7".isdigit()
True
"'7'".isdigit()
False



184 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 16:08:33 ]
>>182-183
「_」と「typeやisinstance」がまさに知りたかった情報です。

ありがとうございます。

でも不思議なのですが、dir()しても「_」というオブジェクトは見つかりません。
「_」の情報はどこに定義されているのでしょうか?

185 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 16:15:47 ]
__builtins__._

186 名前:181 mailto:sage [2010/03/18(木) 16:28:45 ]
>>185
納得しました。
ありがとうございます。

187 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 16:45:25 ]
この春厨は同じ春厨でも筋のいい春厨だから仲良くな。

188 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 18:05:51 ]
皆さんいかがお過ごしでしょうか。
ストレス解消に煽りに来ている方、十分な睡眠を取って煽ってくださるようお願い申し上げます。
風邪を引く前の予防が肝心です。日々の鍛錬を怠らないようにして下さい。
暇つぶしに来ている方、時間を決めて一時間ごとに十五分から二十分くらいの休息を取られた方が良いと思います。
時間は限られています。あなたの人生はあなたの物ですが、一日中インターネットに没頭している、これはいかがな物でしょうか。
インターネットはあなた様の健康に悪影響を及ぼす可能性があります。
マルチしている方、人を忘れないでください、すべてはたくさんの人の多大な努力と膨大な時間を費やして出来た物でありますが故に、
そのような行為は非人道的行為にあたります。なお九十割はスクリプトで出来ているので、気軽に質問してください。マルチはいけません。
さて、私がこのような事をなぜ申し上げますかというと、この度Goのビルドに成功したが故に存じ上げる次第でございます。
よくよく冷静に考えると、このような開発段階にあり、現段階では実用に適していない「ぼくのかんがえたさいきょうのげんご」は
プログラミング言語の学習に適さないと判断させていただきました。今後ますますのご健康とご活躍をお祈り申し上げます。

189 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 18:27:07 ]
長文は縦読みかどうかしか確認しないのが俺のジャスティス(キリ

190 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 19:15:58 ]
>>188
特定しました

191 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 21:08:19 ]
>>175
それ、1行挟むだけで済ませようと思ったらreturnかexitくらいしか入らないんじゃない?

192 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 21:09:15 ]
>>191
raiseもいれられるお!

193 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 21:15:19 ]
ってかマジレスすると、
その1行が想定している意味は、すぐ上の>>174を読めば分かる



194 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 21:16:55 ]
なんてかpersable()がないのは、変換する必要がない場面で変換可能かを調べる必要が滅多にないこと、
変換する必要がある場面で例外にしてはいけない合理的理由が特に見当たらないこと、その2点に集約されてる気がする。
(Python

195 名前:デフォルトの名無しさん mailto:sage [2010/03/18(木) 21:23:01 ]
途中で書き込んでしまった。すまそ

(pythonでは例外使うことに抵抗がなく、むしろ積極的に使っている節がある。
それに、何もかもを1行で書きたいという欲求に、Guideは全然興味を示してない。
多分、三項演算子ができたのも、論理演算子を組み合わせた直感的でない方法取られるよりはマシとの判断)

str.indexとstr.findが両方あることを考えるに、
intが例外を返すのが直感的でない、例外を返さないことに意義がある場面が十分ありうるのなら、
既にparse_intは取り入れられてるはずだろう。

196 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 01:08:04 ]
>>195
strにfindとindexの2種類合ってintには無い理由の大きな理由は、 str.find と str.index が
メソッドなのに対して str は組み込み型だからだと思うよ。

197 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 01:52:26 ]
>>196
確かにそれも大きいとは思うが、それこそparse_intにすればいいって話になってくる。
一応、変換手段が複数ある例として、
str(u'abc')があるのにu'abc'.encode('ascii')が用意されているといったケースがある。
(これは、どっち使ってもUnicodeEncodeError例外が出うるけど)

198 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 02:34:10 ]
ignoreが付いてるんだから
int()にもignoreがあればいいのにって話

199 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 02:52:29 ]
いい加減そういうモジュール作るとか俺々Python作るとかすればいいじゃん
なんのためのOSSだ

200 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 03:15:23 ]
>>197
最初から int に加えて parse_int みたいなのを加える事を言ってる。
"メソッド" はクラスの名前空間に属するけど、 int() に並べて parse_int() を追加しようとすると
組み込みの名前空間を汚しちゃう。

>>198
ignore付けたら何を返せばいいの? 0 だと "0" を問題なくパースできたのと見分けがつかないよ。

201 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 03:38:07 ]
>>198
だから、んなもんあってもバカがバカな使い方してバグ増やす以外に何のメリットもないと。

202 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 07:51:51 ]
>>200
>ignore付けたら何を返せばいいの? 0 だと "0" を問題なくパースできたのと見分けがつかないよ。

もちろんそれでいい
そのためのignoreなんだから

u'hoge'.encode('fuga', errors='ignore')
だって問題なくエンコードできたのと区別つかないでそ?

203 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 08:06:34 ]
型変換とエンコードを一緒にされちゃいました



204 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 09:08:52 ]
語るに堕ちたなw
エンコードっつても
unicodeとstrの型変換だぞ

205 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 10:25:08 ]
ゆるしてやれ

206 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 11:00:26 ]
Pythonではもともとstr型があったところにunicode型が導入されたという歴史的経緯がある
Python3では文字列型がunicode型に統一されている
以上のようなことから、unicode <-> strの型変換は特殊な位置づけにあると思う

207 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 11:14:34 ]
Python3でもstrのコンストラクタで相変わらずerrors='ignore'と書けるわけだが…

それ、strのコンストラクタにerrors="ignore"と書けるのは良くて
intではダメ、という合理的な論拠や説明にはちっともなってなくね?
「特殊」ってつまり何?
なんかのマジックワードか何か?

208 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 11:16:48 ]
>>200
str(b'\xff', errors='ignore')
''が返るね、問題なくパースできたのと見分けがつかないよね

なんつうか前から思っていたが、しばしばPython信者の擁護は見苦しくて妄信的だね

209 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 11:19:32 ]
まあ ignore を「敢えて」指定するのは
> 問題なくパースできたのと見分けがつかないよね
を覚悟の上でやっているわけで。

違う型を返しているわけでもないし

210 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 11:21:06 ]
>>209
よく読もう
例えば>>200の最後の文は滑稽でしかないということだよ

strのことは忘れたかのように、握り潰せるインタフェースは邪悪だと
彼らは主張していたわけだからね

211 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 11:51:48 ]
まだこんなくだらない話を続けているのか。
Pythonの仕様に文句があるなら、作者の見てるとこで言えよ。
こんなとこで言っても変更される可能性は0だろう。

それでも駄目なら、自分で新しい言語を作ればいい。

212 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 11:53:07 ]
2chやこのスレの存在意義を問うレスが来ました
そろそろ春だなあ厨も来る頃ですね

213 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 11:53:39 ]
春厨は書き込みのすべてが滑稽



214 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 11:58:46 ]
>>202
>>>200
>>ignore付けたら何を返せばいいの? 0 だと "0" を問題なくパースできたのと見分けがつかないよ。
>
>もちろんそれでいい
>そのためのignoreなんだから

いや,この仕様はないわ、滑稽
型変換に失敗したときに0を返すべきかどうかは実装依存だし、
「じゃあdefaultをつけようぜ! xxにはあるじゃん!」
などと付け足すとしたら恥の上塗り

ぜんぜんPythonicじゃないよ

215 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 11:59:59 ]
頑張るねえ

216 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 12:02:40 ]
>>210
>彼らは主張していたわけだからね

脳内には300人の「彼ら」が居るわけだね。

217 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 12:05:47 ]
おまえらレベル高すぎ

218 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 12:07:03 ]
>>216
2人以上いるときは複数形を使うのが正しいんだよ
君は日本語の勉強からやりなおしたほうがいいんじゃないかな


219 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 12:24:23 ]
春厨はなかまになりたうそうにこっちをみている

なかまにしますか?

220 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 12:44:40 ]
そういう実装は色々と問題があるから
エラー吐かせてるのに何で不毛な議論するの?

221 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 13:04:32 ]
unicodeとstrの変換は、途中で例外出されたときに手動でハンドリングするのが難しい。
intは簡単だから、オプションを必要と言う主張が弱いだけ。

222 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 13:12:03 ]
>>214
def int(str, , errors='strict', default=0):
で定義して erros='ignore'

223 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 13:13:49 ]
途中で送ってしまった

>>214
def int(s, base, errors='strict', default=0):
で定義して erros='ignore' のときは default (もちろん変更可能) を返せば良い



224 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 13:15:04 ]
,ひとつ多くね?

225 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 13:29:42 ]
>>223
221

226 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 13:31:25 ]
「じゃあdefaultをつけようぜ! xxにはあるじゃん!」
などと付け足すとしたら恥の上塗り


227 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 14:38:15 ]
そろそろ次の話題マダー? ちんちん

228 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 14:45:59 ]
メールの MIME-multipart のデコードをしようと思っているのですが
Content-encoding と実際のデータのエンコードが違っているときがあります
適切に文字コードを判断してデコードするにはどのようにプロ倉民すればよいでしょうか
出力は UNICODE に統一出来ていれば良いです

229 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 15:06:29 ]
1. もちついてタイピングする事
2. 右見て左見てもう一度右見て気をつけて渡る

230 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 15:16:09 ]
ι''ゃぁ、次の話題。

a = [2,2,5,6,3,8,9] とかいうリストがあって、これを "," 区切りの文字列にしたいな、と思ったとき
a
",".join(a)
",".join(map(str, a))
の順番でタイプすることが多いんだけど、この順番だとキャレットが行ったり来たりしてちょっとストレス感じます。

lambda が入ったりして少し複雑な文とかでも、最終的に書かなければいけない順番と
頭で考える順番が全然イコールになってなくて、イライラっとするんだけどこういう事って結構ない?

231 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 15:48:18 ]
Lispなら構文木は簡単に弄れるよ

232 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 16:40:03 ]
py使いならXMLでやるんじゃね
知らんがな

233 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 16:49:34 ]
UNICODE必要な処理はperlをパイプで呼び出して処理すればいいじゃん



234 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 16:50:37 ]
groups.google.co.uk/group/comp.lang.scheme/browse_thread/thread/349c51b1d30d2b3e/34a7757985bd4b7b
lispよりOCamlもいいなあ

235 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 16:55:54 ]
python使いならYAMLしか選択がない

236 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 16:57:31 ]
pythonの原型らしいbootというのがいまだに使われてるプロジェクトがあった
bootってpythonとどこまで互換あるんだろ

237 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 18:10:03 ]
>>234
PythonもLispもOCamlも全部やればいいと思うよ!

238 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 20:55:28 ]
>>230
Pythonでは、リストやジェネレータの内包表記があるからmapはあんまり使う必要がない。
",".join(str(n) for n in a)
って書き方だと、ちょっとは書きやすくなるんじゃないかなぁ。

239 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 20:59:16 ]
>>208
変換できない文字は引数で指定した通りignoreした上で、変換可能な文字はすべて何ら問題なく変換している。
それは極めて正当な処理だ。



240 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 21:12:01 ]
>>238
','.join(str(n) for n in a)
','.join(map(str, a))
元のほうが短くないか?

241 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 21:19:36 ]
>>238
str(n) の n って for n で初めて意味が決まるので、
内包表記も頭から順番に書いていくには素直な順番じゃないなぁと思う。
内包表記に if が出てきたり多重ループになってたりすると
読んでも理解しづらいし、書きたいときも手が止まる。

242 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 21:29:18 ]
perlでは処理できる日本語がpythonで処理できないのは
UTFに変換できない文字が入ってるから?
それ以外のケースってある?

243 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 21:30:35 ]
>>242
処理できなかったのって具体的にどんな奴



244 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 21:33:25 ]
エンコーディングにsjisを指定しているのなら、cp932にしたら
幸せになるかもしれない
euc-jpを指定しているのなら、euc_jisx0213にしたら幸せになるかもしれない


245 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 21:50:30 ]
>>242
お前の脳が日本語を処理出来ないことは良くわかった

246 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 22:54:20 ]
>>240
ごめ、長さのこと考えてなかった。

そのへん気になる人は、
','.join(str(n) for n in a)よりは','.join(map(str, a))の方が短く、
','.join(map(lambda n:str(n+1), a))よりは','.join(str(n+1) for n in a)の方が短いことを考えながら使い分けるとよい。

>>241
あまりに複雑な内包表記が読みづらいことは認める。

後置での読み書きは慣れの問題だとは思うが、Pythonは内包表記も三項演算子も後置的で、慣れないとPythonは使い辛いのかもしれない。
(cond ? true_value : false_valueをpythonでは true_value if cond else false_valueってかく)

意味、というか値が後で決まる件に関しては、関数だって定義したときには引数の値決まってないじゃん、って思うといいよ。
「とりあえず、str(n)する。で、そのnってのは...のことで」という読み方をすると割と読めるんじゃないかなぁ。

書くときは、自分の中で、シーケンスの中身を表す変数ってのがだいたい固定化してきたら書きやすくなる。
例えば俺はrange(10)の中身だとiで、文字列ならsで、整数ならnで、とりあえず何か要素ならelemって書くことが多い。

247 名前:デフォルトの名無しさん mailto:sage [2010/03/19(金) 22:58:41 ]
殺伐としていた本スレになにがあった

248 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 02:14:51 ]
内包表記とかS式とかって、日本語の語順と逆だから違和感があるよね。
やっぱ、FORTHかな。

249 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 13:20:48 ]
日本語と比べて違和感が、などと言っている英語駄目なエンジニアに未来はないけどね。


250 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 13:22:46 ]
>>248
スタックマスターハケーン

251 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 13:27:21 ]
>>249
Shut your fuckin' mouth!!!!!

252 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 14:26:55 ]
# 空白と改行を消す。
s = s.replace( "\n", "" ).replace( " ", "" );
こんな書き方しないとダメなの?

253 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 14:32:26 ]
s.translate(None, " \n")



254 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 15:25:26 ]
ボクチムは英語で罵倒できるほど英語ができるんだけど日本語と比べて違和感が
などと言っている奴はエンジニアである前に人間として駄目だけどね

255 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 15:32:27 ]
>>254
Take a flying fuck

256 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 23:28:00 ]
WiresharkのビルドにPythonが必須なんだが
Cygwin同梱のPythonではダメでWin32ネイティブのものが
インストールされてる必要がある
www.wireshark.org/docs/wsdg_html_chunked/ChSetupWin32.html#ChSetupPython
PerlはCygwin版で良いのにPythonは何故ダメなのか不思議

どうせWin32ネイティブのPythonが必要なら
Perlやbashその他もろもろをPythonで置き換えて
Cygwinインストール不要にして欲しい

subversionやNSISは仕方がないとして
Perl, bash, bison, flex, diff, patch, wget, unzip
なんかはPythonで置き換えられるよね?

257 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 07:35:03 ]
そもそも関数が前置記法で欧米的。
日本語的とか言ってるような奴はそこから批判すべき。

258 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 07:43:31 ]
>>257 LLスレで好きなだけやっとれ

259 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 09:45:11 ]
いいじゃん、Pythonはオランダ語的ってことで。
len(s)はV1語法で、s.join(l)はV2語法だよ。

260 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 10:43:27 ]
>>257
単にOO風の記述と関数的な記述が入り乱れてるから混乱するって話じゃねーの?

261 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 11:13:15 ]
これがPython文法だと言われれば別に反発する気が起きない。
昔は強制インデント文法だけ取り上げられてマゾ言語と言われてたが
最近はあんまり言われなくなったなぁ。

今はモジュール・クラス・関数の命名の統一のなさがどうにも気になる。
Python4できっちり整備して欲しい。

262 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 11:20:57 ]
母語がなんであれ、人間の思考は SOV の語順が一番自然というのを聞いたことがある。
絵を見せて、パントマイムでそれをつたえるという作業をさせると、SOVの順の人が一番多いのだそうだ。

263 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 11:23:25 ]
naming style を統一しなかったのは、まずJavaやPosixみたいな既存の関数の
port版はそっちと名前を合わせたほうが使いやすいから統一しない、統一しないの
であれば、古いからっていう理由だけでpep8に従ってないモジュールのインタフェースを
無理に変える必要も無いよね−、という考えでそのままになってる。

パッケージ名だけは小文字で統一された。それ以外の分は、Threadingモジュールみたいに
段階的にエイリアスを定義しては古い方をdeprecated扱いにする・・・を繰り返して、
ゆっくり移行していくと思うよ。Python4から!みたいに線引きすると移行がしづらくなるから。



264 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 23:27:03 ]
>>256
yaccやlexって標準添付ライブラリで置き換えられるんだっけ?

265 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 17:39:35 ]
LL言語なんてperlがあれば十分なのに,なんで
RubyだのPythonなんてものができたんだ?

266 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 17:51:04 ]
perlがキモいから

267 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 18:02:16 ]
perlがゴミだから

268 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 18:56:42 ]
いあPerlもPythonも必要
ゴミはRuby

269 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 18:59:49 ]
どうぞどうぞ。

270 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 19:03:55 ]
いやそれ以前にLispがあったのになんでPerlなんてできたんだ?

271 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 19:05:42 ]
PerlとPythonとtclは要るな
make testで使われてる事が多いから

rubyは要らね

272 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 19:08:49 ]
>>270
()//////

273 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 19:09:32 ]
ちがった。
\\\\\\\\



274 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 20:12:29 ]
>>271
たしかに
そこにrubyを含めると
rubyのテストをしないといけなくなる

275 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 20:17:15 ]
>>274
は?

276 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 20:27:24 ]
なにそれこわい

277 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 20:27:38 ]
ひ!

278 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 20:36:43 ]
rubyは好事家が趣味でコッソリ使う言語だよな
日本でこんなに広まったのがそもそもの間違い

279 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 21:31:14 ]
RPGツクールとかいうブラック企業が制作したソフトウェアに組み込まれた言語だからな

280 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 22:04:15 ]
RPGツクールは同コンセプトでもっとまともなものが出てもいい
言語別ゲーム用ライブラリは敷居が高すぎる
あ、敷居が高いからいいのか

281 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 22:09:16 ]
RPGツクールは知らんがDANTE98とチャイムズクエストは神

282 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 23:59:57 ]
Pythoneerだな

283 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 03:05:02 ]
NetHackのGUIをpythonで作ってください



284 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 03:10:40 ]
どうぞどうぞ

285 名前:デフォルトの名無しさん mailto:age [2010/03/23(火) 17:15:47 ]
Python 2.6.5/3.1.2リリース
sourceforge.jp/magazine/10/03/23/048255

286 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 00:40:22 ]
他のLL言語との比較は
pc12.2ch.net/test/read.cgi/tech/1267553581/
でやれ

287 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 00:46:19 ]
どうぞどうぞ

288 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 12:26:27 ]
python26_d.lib
ってどこか落ちてないのか

289 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 12:46:59 ]
自分でデバグビルドすれば作れるし
自分でビルドしないのなら特に用のないファイルじゃないの?

290 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 13:39:36 ]
>>289
pythonを部品として使ってるプロジェクトがビルドできない


291 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 13:49:24 ]
>>290
ああ、それをデバグビルドしたくて、デバグ版はpython26_d.libにリンクするように
なってるわけな
実際にデバッガで動かそうと思ったら、それだけじゃなくて色々いると思うよ
最低限python26_d.dll、あとネイティブモジュール(pyd)も全部_d版が必要

そのプロジェクトは誰が作ったの
赤の他人?

292 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 14:14:25 ]
sourceforgeってpythonなんだ

293 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 17:22:33 ]
pythonのWebフレームワークでロードバランスなど負荷分散方法が組み込まれてるのってある?



294 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 21:22:22 ]
>>293
Zopeが入ってるっぽいが

295 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 22:55:03 ]
Zope(笑)

296 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 00:39:06 ]
最近は何が流行りなんだdjangoか
GAEのおかげでpython使ってる人は増えてるみたいだけど

297 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 00:57:22 ]
www.google.co.jp/trends?q=django%2Cpylons%2Ccherrypy%2Cplone%2CTurboGears&ctab=0&geo=all&date=ytd&sort=0
djangoダントツ

298 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 05:30:23 ]
わかってて引用してるだろ?w

299 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 12:33:37 ]
djangoはロードバランスできないのか?

300 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 13:01:05 ]
無茶いうな

301 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 19:54:37 ]
>>293
Pylonsに入ってるっぽい

302 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 20:47:33 ]
なんでWebフレームワークで負荷分散するんだよ?
フロントにnginx使って、バックにDjangoを複数立ち上げておけよ。

303 名前:デフォルトの名無しさん [2010/03/26(金) 23:42:54 ]

JTHONやCPYHONなどパイソン関連用語が多くて

学習する前に混乱しそうなんですけど、難しくないですか?





304 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 23:49:46 ]
>>303
両方綴り間違ってるから釣りっぽいけど、
どの言語も同じようなもんだし、最初は気にする必要もない

305 名前:デフォルトの名無しさん mailto:sage [2010/03/27(土) 15:11:37 ]
Jythonで作ったスクリプトをコンパイルして
classファイルやjarファイル作りたいんだけどどうやるの?

306 名前:デフォルトの名無しさん mailto:sage [2010/03/27(土) 15:24:51 ]
ctypesとswigどっちがいいんだろう
OpenCVにデフォでついてるswigがなんか嫌なんだけど

307 名前:デフォルトの名無しさん [2010/03/27(土) 18:30:41 ]
>>306
原因不明のエラーが出ても気にならないならOpenCvSwing版でもいいが
ちゃんと使いたいならcvtypesとか使ったほうが安心できる
ROI使えないとかpython仕様じゃない実装されてる風だったり
かなりストレスたまる

308 名前:307 mailto:sage [2010/03/27(土) 18:31:27 ]
下げそこないスマソ

309 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 00:11:15 ]
cvtypes ってなんですか

310 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 01:20:23 ]
code.google.com/p/ctypes-opencv/
自分はこれを使ってた。
swig版やcvtypesと違ってちゃんとメモリを自動的に開放してくれるから便利だった。

311 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 01:42:27 ]
ひょっとすると ctypes-opencv のことを略して cvtypes と言うのですか?

312 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 01:44:16 ]
opencvでPyPIれ

313 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 01:46:09 ]
Related Python wrappers for OpenCV
OpenCV has its own swig-based Python wrapper. However, it has conflicts
in memory management between C/C++ and Python, and hence is not suitable
for large projects. It is also particularly hard to maintain and develop.

Another project called CVtypes was pioneered by Michael Otto and is
currently maintained by Gary Bishop
(at wwwx.cs.unc.edu/~gb/wp/blog/2007/02/04/python-opencv-wrapper-using-ctypes/).
The wrapper is based on ctypes. It supports a large set of OpenCV's
functions and a limited set of OpenCV's structures.

I used to provide some improvements to CVtypes here and there. While
Gary Bishop was a kind professor, I felt not so nice to keep asking him
to update his code. Therefore, I decided to branch from his CVtypes,
and the result is this project. ctypes-opencv supports a fairly complete
set of OpenCV's structures and functions. More importantly, I have put
a lot of efforts in making ctypes-opencv faster, better memory-managed,
and easier to use, by not only adopting but also improving the pythonic
interface introduced by OpenCV's developers. Nevertheless, credits should
also go to OpenCV developers, and CVtypes' authors and contributors.
I intend to eventually merge back to Gary Bishop's CVtypes when the project
is mature enough.




314 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 03:53:26 ]
>>302
Ruby on RailsだとMongrelとかいうのが負荷分散してくれるみたいなんだけど
Pylonsにも似たような機能はあるのかな

315 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 04:02:08 ]
OpenCV2.0のswigもメモリー漏れあるのだろうか

316 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 04:26:56 ]
>>314
tornado使えばwsgi対応のフレームワークは全て出来るんじゃないかな

317 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 06:22:50 ]
Visual StudioのExpress版でIPython出してくれたら本気出す

318 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 07:24:30 ]
>>314
Mongrelでも一緒だ。
複数のMongrelを立ち上げて、フロントはApacheかnginxみたいなリバースプロクシを使って
負荷分散する。

319 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 13:26:50 ]
ロードバランシングはフレームワークのレベルで行う事ではないってことか

320 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 13:34:04 ]
振り分けクンを前に置くのが普通だと思っていたぜ・・・LBするくらいの環境なら。

321 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 20:44:16 ]
しかしDjangoの日本語テキストって本当に少ないな

Pythonとセットで始めたいけど英語読めないから無理だわ・・・

322 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 21:14:15 ]
DjangoはTurboGearsやPylonsより圧倒的に日本語情報多いと聞いたが

323 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 21:18:02 ]
ドジャンゴは本まで出てるしな



324 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 21:30:42 ]
Djangoはソースコードも追いやすいし書籍無しでいけるんじゃね
Railsは俺のレベルでは無理だった

325 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 22:03:14 ]
ドジャンゴじゃなくてダンジョーだろ

326 名前:デフォルトの名無しさん mailto:sage [2010/03/29(月) 02:03:56 ]
日本のドジャンゴとゾープユーザは糞だよな

327 名前:デフォルトの名無しさん mailto:sage [2010/03/29(月) 02:06:04 ]
初めまして、糞です

328 名前:デフォルトの名無しさん mailto:sage [2010/03/29(月) 02:10:24 ]
ぼくはPHPからダンジョーでパイソンに興味を持ちまして、相変わらず糞コードを書いてますウンチです

329 名前:デフォルトの名無しさん mailto:sage [2010/03/29(月) 07:48:46 ]
ttp://djangoproject.jp/doc/ja/1.0/intro/whatsnext.html

330 名前:デフォルトの名無しさん mailto:sage [2010/03/29(月) 12:32:51 ]
OpenCVに限定しない一般の場合でも
swigよりctypesが推奨ってことでいいのだろうか

331 名前:デフォルトの名無しさん mailto:sage [2010/03/29(月) 12:43:50 ]
ctypesはパフォーマンスがあまりよろしくないみたいだから
既存のライブラリ利用→ctypes
新規で作成→swig
がいいかなと思ってる

あと使った事ないけどPyCXXが面白そう

332 名前:デフォルトの名無しさん mailto:sage [2010/03/29(月) 15:58:22 ]
SIP は?

333 名前:デフォルトの名無しさん mailto:sage [2010/03/29(月) 20:31:40 ]
Boost.Pythonってのもある



334 名前:デフォルトの名無しさん mailto:sage [2010/03/29(月) 20:44:39 ]
Pyrex/Cython

335 名前:デフォルトの名無しさん mailto:sage [2010/03/29(月) 20:44:50 ]
cython

336 名前:デフォルトの名無しさん mailto:sage [2010/03/29(月) 21:55:41 ]
Python/C APIだけで書く人はいないのか

337 名前:デフォルトの名無しさん mailto:sage [2010/03/29(月) 22:21:45 ]
>>336
bazaarその方向を目指してるようだ

338 名前:デフォルトの名無しさん [2010/03/30(火) 18:14:47 ]
Pythonどころかプログラミング自体初心者ですが、
Pythonの勉強はPython設計者本人が書いたという「Pythonチュートリアル第2版」でしようと思ってます。
大丈夫ですよね?

339 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 20:57:12 ]
駄目です

340 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 21:03:42 ]
無駄です

341 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 21:10:51 ]
童貞です

342 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 21:15:14 ]
ひどい

343 名前:338 [2010/03/30(火) 21:16:05 ]
なぜですか?



344 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 21:24:07 ]
プログラミング初心者用ではないからじゃないかなぁ
まあ、別に読んでも害はないけど
文句は言うな!

345 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 21:25:53 ]
もう買っちゃったのなら三章から読んでいって
わけわかんないところは読み飛ばせばなんとかなるよ!

たぶん

346 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 21:26:19 ]
>>343
みんぱい
はじぱいは?

347 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 21:28:06 ]
はじぱいは悪くないけど信者がキモいよ。

348 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 21:28:52 ]
>>338
みんぱいいいよみんぱい

349 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 21:30:34 ]
みんぱいはいいけどアンチがキモイよ

350 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 21:36:49 ]
みんなのぱいぱい

351 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 21:36:56 ]
ゆえにプログラミング初心者向けのPython書籍はございません

352 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 22:20:47 ]
川の向こうでRubyが手招きしている

353 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 22:22:48 ]
三途の川?



354 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 22:28:13 ]
荒川だな

355 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 22:32:23 ]
みんなのPythonのひどさ。
tabesugi.net/memo/2006/a1.html#070018

356 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 22:37:52 ]
Rubyずきには申し訳ないが、
Rubyがもし日本で生まれていなければ悩むことなく、みなPythonを選択し、
もっと日本のPythonコミュニティが発展していたのかもしれないとおもうと、
なんか複雑な気分だなあ。

357 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 22:38:21 ]
な,アンチキモいだろ?

358 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 22:40:23 ]
>>357
にいやまはああいう芸風なんだよ(w

359 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 22:52:33 ]
pythonの肩持つ気はないがrubyってそんな日本人に支持されてるのかね?

360 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 23:07:06 ]
大型の書店にいってPythonとRubyの書籍の比率をみればあきらかだろ。

361 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 23:10:47 ]
悩んだ末にRubyとRailsの本3冊かって全部読んだけど
結局なじめなくてPythonやってる

362 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 23:13:12 ]
dive into なんかは、ただで読めるだろ

363 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 23:16:20 ]
いままでは最初にバイブル本を読破してから
プログラミングに一気にとりかかるのが自分のやりかただったけど、
Pythonは本読む必要もなかった。
ドキュメントのグーぐるで十分。それくらい楽勝な言語。



364 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 23:21:30 ]
Rubyで初めてプログラミング始める人は理解しやすいのだろうが
javaとかC#とかやってるとRubyは凄く気持ち悪い

365 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 23:53:36 ]
Tutorialだけで十分。
日本語訳は正確じゃなかったり、くどかったりすることもあるので、オリジナルを読むのが吉。

366 名前:デフォルトの名無しさん mailto:sage [2010/03/30(火) 23:58:35 ]
俺もC++とJavaから来たが、PythonよりRubyのほうが書いてて気持ち良いなぁ。
でも、他人が書いたソース読むんなら、断然Pythonだな。


367 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 00:08:03 ]
[The ruby sniffer]
whenever they have ruby coding, they stay focus to what ruby.
that doing is like sniffing ruby code, actually, they might sniff ruby code.
why... I guess because that is goddamn flaw of ruby.
how flaw, I could answer... exactly they are like sniffer.

368 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 01:09:14 ]
PILで作った画像をsaveするときに
ファイルではなくメモリ上のバッファに
出力したいのですが、具体的には

im = Image.new('RGBA', (sizex, sizey))
im.putpixel((x, y), color)
...
#im.save('hoge.gif') ←ここのかわりに
s = StringIO.StringIO()
im.save(s)

あとで s.read() で別の部分に使うような感じです

s のところが f = open('hoge.gif', 'wb') みたいに
file オブジェクトなら正常に動作するのですが
StringIO だと (file オブジェクト互換のつもり) 書き込めません
やはり file オブジェクトにしか出力出来ないのでしょうか?

369 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 01:22:16 ]
im自体をメモリ上に持つのはだめなの?
一応tostringっていうメソッドはあるみたいだけど

370 名前:338 [2010/03/31(水) 01:31:57 ]
Tutorialって日本語訳として出版されたものでないと、
書籍の形にはなってないんですか?

371 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 01:41:29 ]
You can use a file object instead of a filename.
In this case, *** you must always specify the format. ***
The file object must implement the seek, tell, and write methods, and be opened in binary mode.

372 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 01:42:36 ]
>>368
im.save(s, 'gif')
かな。format指定しないとダメと思う。
fileオブジェクトの場合は .name の拡張子から
フォーマット判断してくれる(たしか

373 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 01:48:12 ]
>>369
ありがとうございます
tostring() だと pixel 部分の sequence のみ?とか良くわからないデータになってしまいます
所謂ファイルに出力されるそのままのイメージでバイナリでメモリ上に持ちたかったので・・・

>>371
ありがとうございます
解決しました

s = StringIO.StringIO()
im.save(s, 'gif')

でうまくいきました
そのあと試しに

s.seek(0)
open('hoge.gif', 'wb').write(s.read())

とやったら同じファイルが作成されました



374 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 01:50:31 ]
>>372
ありがとうございます
リロードずれたので行き違いになってしまいました
結果は >>373 の通りです


375 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 13:31:34 ]
初心者的な質問で申し訳ありませんが
a = open("hage.txt", "r")
for b in a.readlines():
fugafuga
a.close()
と書くのと
for b in open("hage.txt", "r").readlines():
fugafuga
と書くのと(close書かない&ファイルオブジェクトの参照を変数に持たない)
どっちが良いですか?

376 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 14:06:20 ]
readlinesすると全部読み込んでメモリ上に乗ってしまうから
バカでかいファイルを読み込むと死ねます。

ということで、
with open("hoge.txt") as f:
  for line in f:
    fugafuga
がいいと思います。
こう書くとwithのブロックが終わった直後に f が自動でcloseされます。

377 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 19:44:36 ]
for line in open("hoge.txt"):
  fugafuga

378 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 20:21:13 ]
ファイルの最後3行だけ読みたいときに perl だと
open(F, "tail -3 /hoge/fuga/hage.txt | ");
while(<F>){
print $_;
}
みたいな書きかたが出来たと思いますが
python だとどう書けばよいのでしょうか?


379 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 20:46:56 ]
lmgtfy.com/?q=python+tail

380 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 20:48:45 ]
pipeがやりたいならsubprocess.Popenだけど、もっとPythonicな方法がありそう

import subprocess
path = "tail -3 lazy.py"
f = subprocess.Popen(path, stdout=subprocess.PIPE).stdout
for line in f:
print line,
f.close()

381 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 20:50:46 ]
空白置換すんの忘れてた……

import subprocess
path = "tail -3 /hoge/fuga/hage.txt"
f = subprocess.Popen(path, stdout=subprocess.PIPE).stdout
for line in f:
     print line,
f.close()

382 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 21:31:07 ]
(´゚ c_,゚`)プッ

383 名前:デフォルトの名無しさん mailto:sage [2010/03/31(水) 23:34:05 ]
pipe使わないならこんな感じか?

limit = 3
lis = []
for line in open('/hoge/fuga/hage.txt ', 'r'):
  if len(lis) >= limit:
    lis[:-limit+1] = []
  lis.append(line)
print ''.join(lis)



384 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 01:26:32 ]
tailは前から読み込んで捨てていくんじゃなくて、後ろから読みながら指定行をゲットしたい。

385 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 01:45:36 ]
>>383
前から全部読むにしても、せめてdeque使ったほうがいいな

file-like objectがseekableなら、
ttp://stackoverflow.com/questions/136168/get-last-n-lines-of-a-file-with-python-similar-to-tail
この辺で

386 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 02:25:17 ]
>>380
できました
ありがとうございました

subprocess.Popen で気になるのは
stdout だけ close() してるので
stdin とか stderr とかは close() 書かなくても大丈夫なのかどうかってことです

387 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 02:28:50 ]
>>378
PythonスレにPerlのコードを貼るな
汚いから誰も見たくないだろう

388 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 05:01:16 ]
正直に言うとlinux環境だとちょっとしたプログラムなら
ついperlで書いてしまうんだよ、ごめんね

389 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 05:24:19 ]
>>388
ゆる

390 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 08:47:21 ]
>>388
一人でこっそり書くなら許す

391 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 12:46:13 ]
>>388
ぜったいにゆるさない

392 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 12:55:37 ]
>>388
Perlのコードを人に見せるなんて、
おな(ryを人に見せるのと同じだ!!

393 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 13:37:37 ]
perlの様なもので殴られた後があり



394 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 14:55:27 ]
sageに入ってるpythonはデフォで色々入ってるのはいいけど
日本語通らないね

395 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 15:53:18 ]
2.4 以前は糞

396 名前:デフォルトの名無しさん [2010/04/01(木) 17:03:54 ]
Tutorialって日本語訳として出版されたものでないと、
書籍の形にはなってないんですか?

397 名前:デフォルトの名無しさん [2010/04/01(木) 17:06:26 ]
Pythonスレで聞くのもなんだが、LL内で1つ覚えるならPython?
Perlに劣ってることってある?

398 名前:デフォルトの名無しさん [2010/04/01(木) 17:07:13 ]
Pythonのバイブル本って何なんですか?
Cでいうカーニハン&リッチー的な

399 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 17:10:34 ]
そんなものはねえ

400 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 18:29:20 ]
>>397
Perlキモイ、Ruby氏ねな俺でもPythonがベストとは言わない
Pythonよりも目標に向いてる言語があるならそっち使った方がよい

401 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 18:30:55 ]
>>397
起動が遅い。
Webプログラミング以外の用途も考えているのなら、
Pythonを進めるが。

402 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 18:37:27 ]
今までプログラム書いたことないなら
Perl より Python の方を薦めるよ
いきなり Perl から始めると変な癖つくからね

403 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 18:50:42 ]
まぁスクリプト言語学びたいならLinux使えよ
スペックあるならWinでもVMWare使えばいいし



404 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 18:52:50 ]
Linuxを学びたいならLinuxを学べばいいが、
スクリプト言語を学ぶのにわざわざOS環境まで用意する必要は無い。

405 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 18:56:47 ]
>>398
信者と言われそうだがはじぱいなんかそれに近いんじゃないか?

406 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 18:59:15 ]
東京キャビネットにperlとrubyのバインディングあるのにpythonがないのは何で?
LL言語間とWebプログラミングに派閥みたいなもがあるのかな?

407 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 19:05:01 ]
>>460
pytc

408 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 19:10:01 ]
>>397
1つ覚えるならPerlじゃないか?
どこのWebサーバ借りても大抵は最新のが使えるのは有りがたい。
Pythonはいまだに2.3なんてとこもある。

ただし、PythonにはGAEという無料で使える最強のサーバが存在するので、
自分で1からWebサービス作りたいとかならPythonが有利ではある。

ぶっちゃけ、1つ覚えたら他のなんてリファレンス片手に1日で使えるようになるから、
何を覚えるかなんて気にしなくていい。

409 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 19:13:06 ]
Perl Rubyはライブラリの充実度や汎用性からいってにありえないな。
日本はWebプログラミング中心に語れることがおおいから
Pythonに人気無いんだと思う。

410 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 19:15:08 ]
日本語が不自由だということはよくわかった

411 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 19:15:47 ]
Pythonに人気がないのはRubyの作者が日本人でみんなそっちに流れていくからじゃないのか

412 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 19:20:03 ]
いや日本ではWeb以外のプログラマにスクリプト言語がまだまだ普及して無いからだと思うよ。
ハード系エンジニアで面倒なときにPythonつかうことがあるんですが、
こっちの世界の人はC/C++書いてるくせにスクリプト言語といっても通じない人が多いんです。

413 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 19:34:24 ]
そういう奴らはbashすら使えないクズだろ



414 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 19:37:34 ]
まあクズだね。
自分シェルスクリプトなんてやらないけど。
VHDLとかハード記述言語は本業なので使えるけど。

415 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 19:40:44 ]
Pythonが教育で使われてるのはコードが綺麗で変な癖がないというのもあるだろうけど、
ほかのスクリプト言語が応用範囲が狭すぎるってのがでかいな。
研究用途ではPerlが一部あるけど、Rubyなんてほとんどないのでは?
PythonはPerlやRubyだけでなくてJavaなどとも競合している言語です。
Webだけで言語の優劣論はできないと思うよ。

416 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 19:43:51 ]
だからPythonもPerlもJavaも使えるようになれよ
こんな所で駄レスしてる間に覚えられるっつーの

417 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 19:53:07 ]
アプリケーションのモジュール書くという実際の要求があって
採用されてるのがPythonだった俺に選択の自由はなかった

418 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 19:55:39 ]
Pythonは研究用途でも使われてますよ

419 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 19:56:54 ]
いつも書くたびに思うがサーバーサイドのスクリプト言語の中ではPythonが1番いいよね。

420 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 19:57:24 ]
Python も Ruby もこの世に存在していなくて
HTML すら無かった時代だったから
Pascal とか C くらいしか魅力なかったな
FORTRAN や COBOL は論外


421 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 20:00:06 ]
論外と思う言語でも使わざるを得ないときもある。
大体最近の言語は文法を把握してコードがかけるようになるより、
ライブラリ把握してつかいたおうほうが時間がかかる。

422 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 20:00:17 ]
Lispでいいから

423 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 20:04:51 ]
>>416
そんなのわかった上で書いてるんだろう。
そもそもスクリプト言語なんてがんばって覚えるほどのものでもないだろう。
どうせ使うときにすぐ覚えられるんだからな。
どんな言語をつかってもだめなやつはだめ。



424 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 21:43:21 ]
dbist_wininstでつくったらしい.exeってサイレントインストールできないのかな?
install directoryも編集できないしちょっと困る

425 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 21:57:29 ]
setuptools入れて
python -m easy_install 424のexe
が一番楽だと思う。オプションである程度ディレクトリとかいじれる

426 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 22:18:23 ]
easy_installに渡すのはすごくいい案!と喜んでやってみたら
share/ にデータつくるやつとかpost_installで.bat作るやつとか(ipython)は
無視されちゃいました。
でも柔軟なアイディアをありがとう

427 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 22:30:11 ]
別にPythonのスレなんだからPythonいいよねぇ
みたいな話がでてきてもいいと思うんだが、
よくないと思ってるのに使ってる人が多いのかここは…w
初学者を追い払おうと変なやつが常駐しているみたいにみえる。

428 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 22:41:40 ]
yam install -y (python-)[hoge]の方が楽だよね

429 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 22:51:05 ]
>>426
setuptoolsはinstall_script/pre_install_scriptオプションに対応してないね
メタデータをexeに埋め込んでるけど探そうともしてないみたい

430 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 23:27:20 ]
pass

431 名前:デフォルトの名無しさん mailto:sage [2010/04/01(木) 23:29:02 ]
github.com/reverie/autolib
これネタなのかな
発想は面白いと思うんだけどw

432 名前:デフォルトの名無しさん [2010/04/02(金) 01:46:13 ]
Pythonの本は何が決定版なの?

433 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 01:54:51 ]
今年発売されるExpert Python Programming



434 名前:デフォルトの名無しさん [2010/04/02(金) 03:42:22 ]
今から勉強するならPython 3がいいですよね?
でも人気のある本はだいたい2が主流で、3は2との違いを最後のほうに少し解説しているだけのようです。
どうすればいいでしょうか?

435 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 03:44:38 ]
本とか関係なしに2がいいよ

436 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 05:33:55 ]
python3は最新版じゃなくて永遠の実験場

437 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 07:06:04 ]
Google App Engineとxreaが2だからずっと2でしか書いてない

438 名前:デフォルトの名無しさん [2010/04/02(金) 07:17:18 ]
みんなのpythonとはじめてのpythonどっちがいいですか?

439 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 13:00:21 ]
とりあえずみんなのPython買えば?

440 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 13:05:57 ]
>>438
君はみんなのPythonが似合ってると思うよ

twitter.com/mopemope/status/11461863638

441 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 13:08:00 ]
はじめての Python は
「初ぱい」と「恥ぱい」の二種類あるから要注意
後者は糞

442 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 13:14:17 ]
>>440
真実と嘘の区別が付かないひとは 2ch に向かない

443 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 14:31:15 ]
linuxのyum使うとwinでいちいちexe落とすの面倒になるな
もうwinのサポート切っちまうか



444 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 14:39:26 ]
どうぞどうぞ

445 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 17:11:33 ]
Macportsの壊れっぷりはなんとかならないのか

446 名前:デフォルトの名無しさん mailto:sage [2010/04/02(金) 21:39:43 ]
*BSD涙目6ぷぎゃー9

447 名前:デフォルトの名無しさん mailto:sage [2010/04/03(土) 01:59:24 ]
>>440
みっともねーw

448 名前:デフォルトの名無しさん mailto:sage [2010/04/03(土) 03:08:04 ]
Python環境作るとき真っ先にeasy_installを入れるんだけど、
標準に入れない理由ってなんだろ。

449 名前:デフォルトの名無しさん mailto:sage [2010/04/03(土) 03:34:53 ]
python自体の機能じゃないからかな
知らんけど

450 名前:デフォルトの名無しさん mailto:sage [2010/04/03(土) 03:57:23 ]
>>426
きちんと調べたけどwininst-*.exeにくっつけたリソースとかは探してた
でもpre_install_script/install_scriptは呼んでない
DATA/*以下を無視してるし、eggに全部固めるというポリシーなんだと思う

>>448
setuptools/distutilsはカオスさ半端ないし、上に書いてみたいに仕様が違ったりするし
誰もやりたがらないんじゃないの

451 名前:デフォルトの名無しさん mailto:sage [2010/04/03(土) 10:53:05 ]
Tarek Ziade ががんばってる。
Python 2.7 では easy_install が標準に入るはず。
しかもアンインストールもできるようになるはず。

452 名前:デフォルトの名無しさん mailto:sage [2010/04/03(土) 10:58:59 ]
わあいわあい

453 名前:デフォルトの名無しさん mailto:sage [2010/04/03(土) 13:30:06 ]
>Python 2.7 では easy_install が標準に入るはず。

これはどうでもいいけど

>しかもアンインストールもできるようになるはず。

こっちはありがたい



454 名前:デフォルトの名無しさん mailto:sage [2010/04/03(土) 16:41:52 ]
2.7なんてあるのか
2系は2.6で終わりかと思ってた

455 名前:デフォルトの名無しさん mailto:sage [2010/04/03(土) 16:44:49 ]
www.python.org/download/releases/2.7/

456 名前:デフォルトの名無しさん [2010/04/04(日) 04:50:39 ]
>>451
easy_installを標準にするんならpypiを使い易いようにして欲しい。

457 名前:デフォルトの名無しさん [2010/04/05(月) 14:16:48 ]
>>451 >>453
distribute
easy_install -> pip

packages.python.org/distribute/roadmap.html#id1

458 名前:デフォルトの名無しさん mailto:sage [2010/04/06(火) 19:33:05 ]
datetime.utcnow() でつくったdatetimeを、JSTに変換して出力したいんですが
どうしたらいいでしょうか。

>>> from datetime import datetime
>>> dt = datetime.utcnow()
>>> dt.strftime('%Y-%m-%d %H:%M:%S %Z')
'2010-04-05 00:09:44 ' # JST に変換して出力したい

マニュアルよんでもわけわかめです。


459 名前:デフォルトの名無しさん mailto:sage [2010/04/06(火) 19:41:51 ]
>>> from datetime import datetime
>>> dt = datetime.utcnow()
>>> tz = datetime.now() - datetime.utcnow()
>>> tz
datetime.timedelta(0, 32400)
>>> dt + tz
datetime.datetime(2010, 4, 6, 19, 40, 18, 922000)
>>> (dt + tz).strftime('%Y-%m-%d %H:%M:%S %Z')
'2010-04-06 19:40:18 '

460 名前:デフォルトの名無しさん mailto:sage [2010/04/06(火) 19:47:22 ]
なんかインチキっぽいな

461 名前:デフォルトの名無しさん mailto:sage [2010/04/06(火) 19:55:19 ]
大丈夫

462 名前:デフォルトの名無しさん mailto:sage [2010/04/06(火) 22:32:50 ]
JSTって分かってるんだったら
datetime.timedelta(0, 60*60*9)
でいいのでは?

463 名前:デフォルトの名無しさん mailto:sage [2010/04/06(火) 23:31:37 ]
そりゃそうだ



464 名前:デフォルトの名無しさん mailto:sage [2010/04/06(火) 23:32:46 ]
レンサバだと datetime.now() が何返すか判らんからなwww

465 名前:デフォルトの名無しさん mailto:sage [2010/04/07(水) 00:16:10 ]
サーバーサイドでユーザーのlocaleはpytzとかで自前解析だねえ

466 名前:デフォルトの名無しさん mailto:sage [2010/04/07(水) 06:34:07 ]
>>458
Pythonは標準ではタイムゾーン関係のクラスが用意されていないので、
class JST(datetime.tzinfo):
def utcoffset(self,dt):
return datetime.timedelta(hours=9)
def dst(self,dt):
return datetime.timedelta(0)
def tzname(self,dt):
return "JST"
みたいに自分で定義して、datetime.astimezone(JST())でJSTにする。

467 名前:デフォルトの名無しさん mailto:sage [2010/04/07(水) 08:44:34 ]
(´・ω・`)


468 名前:デフォルトの名無しさん mailto:sage [2010/04/07(水) 10:27:50 ]
だれかが一覧を書いてくれればOKってこと?

サマータイムとかがうざくて面倒すぎるのかな

469 名前:デフォルトの名無しさん mailto:sage [2010/04/07(水) 15:20:28 ]
PyPyってGoogleのプロジェクトだったの?知らなかった。
google-opensource.blogspot.com/2010/04/pypy-12-released.html

470 名前:デフォルトの名無しさん mailto:sage [2010/04/07(水) 15:38:30 ]
それ読むとGoogleが金出してるみたいね

471 名前:デフォルトの名無しさん mailto:sage [2010/04/08(木) 12:21:50 ]
>>458
ドキュメントに載ってたこれをコピペして
class FixedOffset(tzinfo):
"""Fixed offset in minutes east from UTC."""

def __init__(self, offset, name):
self.__offset = timedelta(minutes = offset)
self.__name = name

def utcoffset(self, dt):
return self.__offset

def tzname(self, dt):
return self.__name

def dst(self, dt):
return ZERO

JST = FixedOffset(9*60, "JST")
でいいのかな。

472 名前:デフォルトの名無しさん mailto:sage [2010/04/08(木) 18:07:54 ]
>>468
ttp://www.python.jp/doc/release/lib/module-datetime.html
>世界各国における時刻の修正に関する法則は合理的というよりも政治的なものであり、全てのアプリケーションに適した標準というものが存在しないのです。

日本でも夏時間を導入するなんて議論がしょっちゅう行われているしねぇ。
今JSTを定義しても、数年後には変わっている可能性がなくもない。

473 名前:デフォルトの名無しさん mailto:sage [2010/04/08(木) 18:27:37 ]
理解できない。
JSTそのものを変更するんじゃなくて、
サマータイム版の標準時(JST-SummerTime)を導入すればいいだけじゃん。

てか「規格」ってそういうもんだろ?
IPがv4からv6になるかもしれないから、
ネットワーク関連のクラス入れないよとかありえないだろ?



474 名前:デフォルトの名無しさん mailto:sage [2010/04/08(木) 20:02:32 ]
>>473
っつーか日本が中共に飲み込まれたら
JST自体なくなってしまうかも試練ぞ

475 名前:デフォルトの名無しさん mailto:sage [2010/04/08(木) 20:27:26 ]
>>474こういうのいらないから誰か引き取って

476 名前:デフォルトの名無しさん mailto:sage [2010/04/08(木) 21:04:16 ]
いらないです(´;ω;`)

477 名前:デフォルトの名無しさん mailto:sage [2010/04/08(木) 21:07:23 ]
■AA対応チェック

┏━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃   ┌───────────────┐             ┃
┃   │ .右のAAのズレない環境が標準モナ.|             ┃
┃   └──y────────────‐┘             ┃
┃  ∧_∧         |     |\|/ |     |   |   ┃
┃ ( ´∀`)         | ∧ ∧  |/⌒ヽ、| ∧_∧ | ∧∧ |   ┃
┃ (     つ          |(,,゚Д゚)||,,゚ Θ゚)|(; ´Д`)|(=゚ω゚)|   ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━┛
   |  |               コソッ|  |
   |  |∧_∧ ジー        ∧_/.|  |  __
   |_|´◛ω◛`)         .(´◛ω|_| .[lШШl]
   |  | o【◎】           (  o|  | (´◛ω◛`) ジー
   | ̄|―u'              `u. | ̄||| | | | |
   """"""""         """"""""""""""""


        ┏━┯━━━━━━━━━━━━━━━━━━━━━━━┓
  ┏━━┻━┥       _,,..                          ┃
  ┠────┤ ⊂⊃  /,' 3~~\ ⊂.⊃                        ┃
  ┗━━┳━┥..............,,,,傘傘傘::::::::傘傘傘.............       おてもと      ┃
        ┗━┷━━━━━━━━━━━━━━━━━━━━━━━┛


        ┏━┯━━━━━━━━━━━━━━━━━━━━━━━┓
  ┏━━┻━┥      (⌒-⌒)      お食事処 仔熊庵        ┃
  ┠────┤ ⊂⊃  (・(ェ)・ ) ⊂⊃                     ┃
  ┗━━┳━┥..............,,,,傘傘傘::::::::傘傘傘.............       おてもと      ┃
        ┗━┷━━━━━━━━━━━━━━━━━━━━━━━┛

478 名前:デフォルトの名無しさん mailto:sage [2010/04/08(木) 23:06:41 ]
おてもと二つはきれいに揃ってるが一番上の看板は微妙にまっすぐじゃない。。。
俺の環境は標準じゃないようだ。ちなみにV2C。

479 名前:デフォルトの名無しさん mailto:sage [2010/04/08(木) 23:09:50 ]
monospaceフォントにしろ

480 名前:デフォルトの名無しさん mailto:sage [2010/04/08(木) 23:15:29 ]
>>478
16ptにしてもズレる?

481 名前:デフォルトの名無しさん mailto:sage [2010/04/08(木) 23:33:35 ]
>>479 480
pt16だす。なんか色々試したけど揃わない
なんか線の太さが1.0だとすると0.1とか0.2とかってくらいに微妙にずれてるんだわ
内側の「標準モナ.| 」←こいつもなんか微妙にずれてるし
とりあえずスレちなんで色んな所まわって勉強してきます
ありがとん

482 名前:デフォルトの名無しさん mailto:sage [2010/04/08(木) 23:34:25 ]
俺もV2Cでズレる(2ドット位だけど)
まぁスレチ

483 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 04:42:59 ]
   ┌─┐
   │●│
   └─┤
   _   ∩
  ( ゚∀゚)彡
┌─┬⊂彡
│●│ おっぱい!おっぱい!
└─┘      おっぱい!おっぱい!




484 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 17:22:43 ]
Python 3 プログラミング徹底入門は評判どうなんでしょうか。
買った方いらしたらどんなもんか教えてください。

485 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 17:26:13 ]
本屋やってますが仕入れません

486 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 18:45:50 ]
OS:windows
バージョン:python3.1
標準のIDLEの使用に関して、
環境変数IDLESTARTUP(PYTHONSTARTUP)を設定していくつか初期設定を
した上で動かしたいです。
しかしながら、上記環境変数を設定して、該当ファイルを配置しても、
ファイルの中身がIDLEに反映されません。
python shellであれば、PYTHONSTARTUPのファイルの内容が反映されます。

Windows版のIDLEは何か別に設定する必要があるのでしょうか。

487 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 19:10:10 ]
この文は語学の観点から見まして非常に難解で抽象的です。
>標準のIDLEの使用に関して: IDLEの使用に関しての記載はないようです
>環境変数IDLESTARTUP(PYTHONSTARTUP): 括弧を使っての「又は・或いは」の表現は理解できません。
>初期設定をした上で: 固有名詞には独自の定義が必要です。=抽象的
>上記環境変数: そういった記載は存在しません=解釈:環境変数名と値
>該当ファイル|ファイルの中身: 文をあからさまに難解にする原因となっていると推測されます。

488 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 19:18:48 ]
どっちもどっちって感じだなw
何だよ語学的な観点って

489 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 19:43:18 ]
setup.py

490 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 19:45:52 ]
間違えた
こっち
sitecustomize.py

491 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 20:37:04 ]
>>487
センスはいいけど、それをここでいわないでくださいよ。
ていうか、そこまでやって回答なしですか?

ちなみに、
>初期設定をした上で: 固有名詞には独自の定義が必要です。=抽象的
は、抽象的じゃなくて、あえていうなら曖昧ですよ。
個体の抽象は個体のクラスと同義だからね。

492 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 20:40:18 ]
そもそも、いちいち意味論を完全にして書き込みなんかしない。

493 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 21:01:28 ]
sitecustomize.pyでググッたらわかりましたが、
これもIDLEでは反映されないです。




494 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 21:06:45 ]
idleを-sオプション付けて起動しなきゃ駄目じゃない?

495 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 21:20:25 ]
-sオプションをつけても反映されないです。

とりあえず、PyShell.pyでロードしているみたいなので、
PyShell.pyを読み解いてなんとかします。
どうもどうも。

496 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 22:17:26 ]
自分で出来ゐなら質問しないで下さい。うざいだけです。

497 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 00:57:32 ]
出来い…?

498 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 01:00:42 ]
出来ゑ

499 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 09:48:52 ]
'はじめてのpython'に書いてあったことなんだけど
res = []
for x in range(5):
 if x%2 == 0:
  for y in range(5):
   if y%2 == 1:
    res.append((x,y))

print res
//(0, 1), (0, 3), (2, 1), (2, 3), (4, 1), (4, 3)
をfilterとmap関数で表現したいのですが

print map(lambda x:map(lambda y:(x,y), filter(lambda x:x%2==1, range(5))), filter(lambda x:x%2==0, range(5)))
//[[(0, 1), (0, 3)], [(2, 1), (2, 3)], [(4, 1), (4, 3)]]
てな感じで配列具合がうまいこと出来ません。
どうしたら良いのでしょう?

500 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 10:20:56 ]
www.josw.net/blog/?p=987

501 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 10:51:45 ]
reduce(lambda x, y: x + y, map(lambda x: map(lambda y: (x, y), range(1, 5, 2)), range(0, 5, 2)))

502 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 11:06:01 ]
非実用的な動的コードを書くのはやめて下さい。
even = filter(lambda x: x%2 == 0, range(5))
# 0-5の偶数をリストとして返します
odd = filter(lambda x:x%2==1, range(5))
# 0-5の奇数をリストとして返します
print map(lambda x:map(lambda y: (x, y), odd), even)
# これを内包表記で表現すると原因が分かります。
[[(x, y) for y in odd] for x in even]
# この場合は以下の通りに書き換えれば配列の具合が良くなります
res = []
[[res.append((x, y)) for y in odd], for x in even]
print res

# 或いは
res = []
map(lambda x:map(lambda y:res.append((x,y)), filter(lambda x:x%2==1, range(5))), filter(lambda x:x%2==0, range(5)))

503 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 11:13:00 ]
print (lambda x,y,z: '%s, %s, %s'%((lambda x,y: '%s, %s'%(x,y))(*x),(lambda x,y: '%s, %s'%(x,y))(*y),(lambda x,y: '%s, %s'%(x,y))(*z)))(*map(lambda x:map(lambda y:(x,y), filter(lambda x:x%2==1, range(5))), filter(lambda x:x%2==0, range(5))))



504 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 11:16:39 ]
わらた

505 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 11:17:20 ]
>>502
こういうのは一行に拘るから意味があるのであって
二行以上でいいなら出来るのは当たり前で楽しくない

↓以下一行野郎うぜーのレス

506 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 11:18:17 ]
どうみても、役には立たないな。
理論とは適当に折り合いをつけてプログラムしろぐらいの意味しかないだろ。

507 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 11:27:45 ]
>>505
499の質問にはそういった事は書いて居ないと言うことは
君には協調性も知性もないということだな。
そして君はここから出ていくべきだ。

508 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 11:32:47 ]
1行にまとめる場合はlambdaを使う必要はないし、むしろ使うのはタブーだ
499ならまだしも、505はPython道を理解できてないし、それかただのperl流れの初心者であると推測できる

509 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 11:49:15 ]
>>499
ようは、mapをネストするとリストのリストになってしまうわけだ。
>>501のようにreduce使えばリストに戻せるが、mapとfilterでそれをする方法は少なくとも俺は知らない。

mapのネストをしないように気をつけて書いてみたら、こういう風になった(もっといい方法求む)
つまり5進数で考えて、10(5)の位をx、1の位をyに置いた。
map(lambda x:(x//5, x%5), filter(lambda x: (x//5)%2 == 0 and (x%5)%2 == 1, range(5*5)))

ただ、pythonではmap使うくらいなら内包表記をすることが推奨されている。
それだと、回りくどい方法を考えなくても素直にこう書ける。
[(x, y) for x in range(5) for y in range(5) if x%2 == 0 if y%2 == 1]

510 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 12:02:38 ]
どう見ても内包表記向きの問題だが、それを使わないのなら
flatmapを使うのが定石
Pythonにはないけど、
flatmap = lambda f, xs: sum(map(f, xs)), [])
のように定義すればよい

flatmapを使うと、以下のようになるよ
flatmap(
  lambda x: map(lambda y: (x, y),
                filter(lambda x: x % 2 == 1, range(5))),
  filter(lambda x: x % 2 == 0, range(5)))

511 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 12:03:38 ]
ああごめん
flatmap = lambda f, xs: sum(map(f, xs), [])
こうね

512 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 13:43:40 ]
おまえらって文法で遊んでるだけじゃね?

513 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 13:46:58 ]
初心者に変なこと刷り込むわけでもないし別にいいじゃん



514 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 13:47:26 ]
失せろクズ

515 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 14:07:03 ]
>>512
Lispスレで言ってこい。

516 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 14:11:28 ]
>>512
おい
ム板の核心を突くのはよせ

517 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 14:16:39 ]
>503

518 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 14:37:53 ]
>>512
それ以外にプログラミングやる意味あるの?

519 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 14:40:44 ]
よくわかんないけど、流れで
>>512

520 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 14:43:47 ]
whenever you use python

521 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 21:26:06 ]
csvファイルを開くときに

filename=input("Open File Name? >")
x=csv.reader(open("c:\data\filename.csv"))

csvファイルは、c:\data内へ確実に置くとして任意のファイル名を入力させて認識させるにはどうすればいいかわかる方おしえて下さい。
(o_ _)o))

522 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 21:31:19 ]
open("C:/data/%s.csv" % filename, "w")


523 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 21:32:08 ]
filename=input('Open File Name? >')
x=csv.reader(open(u'c:/data/%s.csv'%unicode(filename)))

os.path.join()もある




524 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 21:34:15 ]
Open File Name?
って何語だよ

525 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 21:38:16 ]
他のスレで聞いて

526 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 21:38:36 ]
>>522
>>523
ありがとうございます。

527 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 21:39:13 ]
os.path.join() は絶対パスを優先するので os.path.basename() を通した方がいい
>>> os.path.join(r'C:\data', r'D:\data\hoge.csv')
'D:\\data\\hoge.csv'
>>> os.path.join(r'C:\data', os.path.basename(r'D:\data\hoge.csv'))
'C:\\data\\hoge.csv'


528 名前:デフォルトの名無しさん mailto:sage [2010/04/10(土) 21:54:57 ]
>>527
ありがとうございます。(o_ _)o))

529 名前:499 mailto:sage [2010/04/11(日) 00:05:39 ]
>502
>507
すみません私の不足で誤解が生じたみたいで。
余興程度の質問でした。内包表記のほうがいいとゆうのは理解しております。
perlのTMTOWTDIに悪影響を受けている初心者なのでちょっとした好奇心でした。

>501
>509
>510
ネスト抜けるにはreduce必須だったりするんですね。
いろいろ勉強になりました。ありがとうございます。

530 名前:デフォルトの名無しさん mailto:sage [2010/04/11(日) 00:34:42 ]
reduceって嫌われてる?

531 名前:デフォルトの名無しさん mailto:sage [2010/04/11(日) 00:41:58 ]
マイナーだから使われてないが正確ではないかと

532 名前:デフォルトの名無しさん mailto:sage [2010/04/11(日) 01:10:27 ]
>>530
>>509だが、>>499にはfilterとmapで、と書いてあったからreduce使うのを避けたが、むしろ俺は結構好き。

python3ではGuidoが「美しくない」って理由だけでfunctools送りになったらしいが、ループ回すよりずっと美しくなることだって多い。
そのまま残すか、代替の美しい表記法を作ってから削除、という形にしてほしかった。まぁ、このはなしはスレ違いだろうが。

533 名前:デフォルトの名無しさん mailto:sage [2010/04/11(日) 01:21:59 ]
>>530
そんなことないんじゃないの

sum()はreduce()の劣化版みたいなもんだし、
map()もリスト一個でいいんなら
def map(f, xs): return reduce(lambda x, y: x.append(f(y)) or x, xs, [])
でreduce()から簡単に作れる

Guidoが嫌っているのは確かかもな



534 名前:デフォルトの名無しさん mailto:sage [2010/04/11(日) 01:38:17 ]
関数型言語風の低レベルなビルディングブロックとしてreduceが有用なのは判るが、
Pythonとしてはより読みやすい+使いやすい高レベルな関数や機能で90%以上の需要を満たしているから、
reduceはあまり使われないし、使う場合だけfunctoolsから持ってこいという扱いをされる。

535 名前:デフォルトの名無しさん mailto:sage [2010/04/11(日) 01:42:58 ]
map/reduce/filter使い出すときりがないからな
functoolsに分離したのは正解だと思う
__fuiltins__ はできるだけ綺麗な方がいいし

536 名前:デフォルトの名無しさん mailto:sage [2010/04/11(日) 02:52:03 ]
pythonでLINQ使える?

537 名前:デフォルトの名無しさん [2010/04/11(日) 20:05:30 ]
   ┌─┐
   │●│
   └─┤
   _   ∩
  ( ゚∀゚)彡
┌─┬⊂彡
│●│ おっぱい!おっぱい!
└─┘      おっぱい!おっぱい!


538 名前:デフォルトの名無しさん mailto:sage [2010/04/11(日) 21:49:19 ]
>>535
map, filterは内包表記に置き換え可能だよ。
ぶっちゃけ、内包表記だって、ちょっと複雑になると解読困難になる。

539 名前:デフォルトの名無しさん mailto:sage [2010/04/11(日) 22:28:53 ]
ky現る

540 名前:デフォルトの名無しさん mailto:sage [2010/04/12(月) 00:10:55 ]
>535
フ、フルチン?

541 名前:デフォルトの名無しさん mailto:sage [2010/04/12(月) 00:17:38 ]
ちょっとわらった

542 名前:535 mailto:sage [2010/04/12(月) 00:36:30 ]
ホントなんでこんなタイポしたんだろう

543 名前:デフォルトの名無しさん mailto:sage [2010/04/12(月) 03:26:30 ]
はるか過去のこのスレで
野太いティンポがぱいそんぽいって
誰かが言ってたのを思い出した
>>535 はそのひとか?



544 名前:デフォルトの名無しさん mailto:sage [2010/04/12(月) 08:17:59 ]
みんなごめん
もうだめだ
会社の貯金も半年後には底をつく
大口の顧客がこの景気で調子悪いのが原因なんだ
みんなごめん
本当にごめん

545 名前:デフォルトの名無しさん mailto:sage [2010/04/12(月) 09:47:11 ]
逝ってヨシ

546 名前:デフォルトの名無しさん mailto:sage [2010/04/12(月) 14:33:49 ]
これが本とのデフォルトの名無しさん

547 名前:デフォルトの名無しさん mailto:sage [2010/04/12(月) 14:35:01 ]

setup.py install
の形式でしか提供してない自分のパッケ0時あるんだけど
pypi
にした方が便利なの?

548 名前:デフォルトの名無しさん mailto:sage [2010/04/12(月) 15:16:02 ]
"パッケ0時"の検索結果 1 件中 1 - 1 件目 (0.11 秒)

549 名前:デフォルトの名無しさん mailto:sage [2010/04/12(月) 15:51:56 ]
パッケ0時 -> パッケージ

550 名前:デフォルトの名無しさん mailto:sage [2010/04/12(月) 16:13:03 ]
テンキ0使えよ

551 名前:デフォルトの名無しさん mailto:sage [2010/04/12(月) 20:12:14 ]
ああ、0とーの誤爆か。
今更気がついたw。

552 名前:デフォルトの名無しさん mailto:sage [2010/04/12(月) 20:43:24 ]
テンキーなんて使わないだろ。

553 名前:デフォルトの名無しさん mailto:sage [2010/04/12(月) 21:11:53 ]
よそでやれ



554 名前:デフォルトの名無しさん mailto:sage [2010/04/13(火) 07:33:37 ]
上のほうのタイムゾーンの話だけど、処理を自分で作らないで
dateutil を入れてほしい(でないとすぐ「日本でしか動かない」
プログラムが量産されちゃうんだよね……)。

dateutil が標準で入っていないのは、データの更新が早すぎる
とかいう政治的な理由だったはず。


555 名前:デフォルトの名無しさん mailto:sage [2010/04/13(火) 08:48:38 ]
タイムゾーンなんて、民主党が子ども手当みたいに無理矢理「来年からサマータイム導入」とか
言ったら本当に導入されちゃうくらい、不安定だからな。
標準ライブラリに入れるのは難しいだろ。

プログラマは普段からUTC使ったら良いと思うよ。

556 名前:デフォルトの名無しさん mailto:sage [2010/04/13(火) 09:40:10 ]
dateutilよりpytz使おうぜ

557 名前:デフォルトの名無しさん mailto:sage [2010/04/13(火) 16:14:10 ]
やっぱりwebだけはrubyにしようかね
バージョン間の互換性ないのがすごい嫌だけど

558 名前:デフォルトの名無しさん mailto:sage [2010/04/13(火) 16:37:36 ]
>>557
なんで「やっぱり」になるのかさっぱり判らん。
DjangoやTG2、Kayで何か不満?

559 名前:デフォルトの名無しさん mailto:sage [2010/04/13(火) 17:06:02 ]
むしろサーバー的にRubyは駄目だろ

560 名前:デフォルトの名無しさん [2010/04/13(火) 20:04:52 ]
sourceforge.jp/magazine/10/04/12/0751213
easy_installが標準に入るんじゃなかったのか?

561 名前:デフォルトの名無しさん mailto:sage [2010/04/13(火) 20:07:31 ]
>>560
ごめん、嘘だった。
Python3.3から標準。
それまでは、夏頃にdistutils2がリリースされて、それをインストールすると
標準ライブラリを置き換えるようになるはず。
インストーラはpipが推奨されるようになるかも。

562 名前:デフォルトの名無しさん mailto:sage [2010/04/13(火) 21:34:55 ]
>>559
なんでサーバー的にダメなんだ?

563 名前:デフォルトの名無しさん mailto:sage [2010/04/13(火) 21:45:14 ]
Pythonなら標準で入ってるからとかかな?



564 名前:デフォルトの名無しさん mailto:sage [2010/04/13(火) 22:10:55 ]
>>562
遅いからじゃないかな

565 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 14:05:19 ]
Pythonより数倍遅いのはいただけないねえ

566 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 15:18:25 ]
Ruby はメモリも食うしな

567 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 17:19:08 ]
つーかrubyは動作が不安だろ

568 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 20:51:02 ]
あれだ
そもそもこのスレでRubyを出しちゃいけなかったと思うんだ

569 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 21:57:07 ]
python厨とruby厨が仲直りするスレって昔あったよね

570 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 22:02:51 ]
厨は天敵への偏見に使うものだと認識されているよ
日本語の基礎すら出来てないようだね

571 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 22:06:04 ]
    ヘ⌒ヽフ
   ( ・ω・) dd
   / ~つと)


572 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 23:01:13 ]
>>555
UTC使うのが当たり前なマだけしか使わないならいいんだけど、
そんなこと考えもしないバカがバカやらかすからそれじゃダメ。
ttp://www.itmedia.co.jp/news/articles/0811/19/news051.html

573 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 23:03:40 ]
>>570
使い方として間違ってない気がするが、それはこの際どうでもいい。
ネットスラングの誤用で日本語の基礎力疑われるのか。
インターネットも身近になったものだ。



574 名前:デフォルトの名無しさん mailto:sage [2010/04/14(水) 23:05:17 ]
文系はこれだから

575 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 11:27:06 ]
>>561
つまりこれからはpipでパッケージ書くのが推奨ってことでいい?

576 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 11:51:31 ]
スラングこそ基礎力が試されるだろ
>>505みたいな基礎力がない奴が短縮化するとアホみたいなコードが出来る

577 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 11:53:09 ]
>>575
pip はタダのインストーラで、distutilsやsetuptoolsの置き換えではなく、
setuptoolsの中のeasy_installだけの置き換え。
パッケージ作る人が使うのは、現時点ではdistributeが推奨で、distutils2 1.0が
リリースされたらそちらが推奨になる。

現時点だと、pipだとeggをインストールできないので、eggに依存しているもの
(Tracプラグインとか)はeasy_installを使わないといけない。
なので、まだコミュニティ全体の方針としてpipが推奨されている訳はない。
pipにも良いところがあるけど、使い分けが面倒だから俺はeasy_installを使っている。

578 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 21:19:53 ]
__(ダブルアンダースコア)の名前修飾ルールについての質問です。

class Foo:
__x = 100
def func(self):
return self.__x
Foo().func() # (1)これはOK
def func(self):
return self.__x
Foo.func = func
Foo().func() # (2)これはダメ

この原因を教えて欲しいです。そもそも__xは_Foo__xという
名前に変えられてしまうのに、何故(1)のときにエラーにならないのか不明です。
クラス定義が終了した瞬間に、すべての__で始まる名前(呼出側も)書き換える、
ということなのでしょうか。

579 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 21:24:17 ]
>>578
Yes。関数名だけじゃなくて、全部の __ が置き換えられる。
でも、 __ は非推奨。 _ だけ使えば良い。

580 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 21:27:33 ]
インデントがorz
class Foo:
 __x = 100
def func(self):
 return self.__x
Foo().func() # (1)これはOK
def func(self):
 return self.__x
Foo.func = func
Foo().func() # (2)これはダメ

すみませんでした。

581 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 21:31:55 ]
>>579
ありがとうございます。__はprivate(サブクラスへの隠蔽)で、_は
protected(外部への隠蔽)として使う。また、普段はprotectedで十分なので_を使う。
ということでよろしいでしょうか。

サブクラスで自由なアトリビュートを持たせられるようにするために、
この名前修飾ルールがあるのですよね。

582 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 21:35:26 ]
>>> class Foo:
... __x = 100
... def func(self):
... return self.__x
...
>>> Foo().func()
100
>>> vars(Foo())
{}

>>> class Hage:
... def __init__(self):
... self.__x = 200
... def func(self):
... return self.__x
...
>>> Hage().func()
200
>>> vars(Hage())
{'_Hage__x': 200}

この違いは何でしょう?

583 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 21:40:50 ]
Fooの__xの方はインスタンス変数でなくてクラス変数
vars(Foo), vars(Hoge)もみるといいと思う



584 名前:581 mailto:sage [2010/04/15(木) 21:45:21 ]
>>582
Fooでの__xはクラスのアトリビュートでインスタンスからは間接的に参照される。
Hageでの__xはインスタンスに直接所属するアトリビュート、ですよね。

P.S.
以下のコードで呼出側も修飾されることがわかりました。
>>> class Foo:
... __x = 100
... def func(self, other):
... return other.__x
...
>>> Foo().func(Foo())
100

Pythonってよくできていますね。Javaのprivateと全く同じです。

585 名前:デフォルトの名無しさん mailto:sage [2010/04/15(木) 21:46:32 ]
文系乙

586 名前:581 mailto:sage [2010/04/15(木) 21:50:45 ]
>>585
理系大学生です。でも物理の成績は悪いので、文系頭かもしれません。

587 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 11:10:11 ]
確か、完全に隠蔽するつもりはGuidoにはなかったよね。
隠蔽しなかったら、わかる人には便利だし、わからないのに使う人はタダのバカだから放っとけばいいって話だったかと。

588 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 11:34:09 ]
やべー
いままで自分が作ったクラスのメンバ全部 self.hoge って書いてた
これからは self._hoge を使わなきゃ

589 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 18:42:08 ]
Python 2.6.2のcsv書き出しについて質問です。

x=csv.writer(file(csvfile.csv,"wb"))としたとき
x.writerow(["あああ","いいい","ううう"])
と出力させたところ、生成されたcsvはメモ帳などで表示させればきちんと表示されているんですが
excelで表示させたところ文字化けします。
utf-8から、shift-jisで出力させる方法を教えて欲しいのですが。dialect='excel'としてもエラーを吐きます;

590 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 19:42:56 ]
x.writerow([u"あああ",u"いいい",u"ううう"])


591 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 19:44:26 ]
やってみます。ありがとうございます。

592 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 19:48:19 ]
駄目みたいです
もっと調べてみます。すみませんでした。

593 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 20:08:25 ]
u"あああ".encode('shift-jis')



594 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 20:43:01 ]
>>593
ありがとうございます。
レスに気付かないまま夢中でやってました;
いったん、unicodeでutf-8からunicodeへ変換して→encodeでunicode→shift-jisへ変換して無事に解決しました。
リスト化しているので、for文を使用し手前で変換しておいて吐き出すようにしようと思います。

>>590 >>593 ヒントありがとうございました。

595 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 20:48:01 ]
"あああ".decode('utf-8').encode('cp932')

596 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 20:52:46 ]
最近打ち合わせでは分かり切ったことは飛ばして話を進めているのに
知識として持っててあたりまえのことを質問する馬鹿が増えた


597 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 21:52:39 ]
Pythonで日本語の出力とか使うつもりなら
3.x使うか他の言語にした方がいいよ

598 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 22:16:22 ]
そんなばなな

599 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 23:12:52 ]
勉強会やるやる詐欺。

600 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 01:54:13 ]
>>594
codecsは使えない?

601 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 11:07:50 ]
>>597
同意。
2.xは本格的に文字列処理するには面倒だし、3.xでかなり変更されてるのに今更本格的に覚えるのもバカバカしいよね。

602 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 11:57:50 ]
rubyを使えば解決だね!

603 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 12:30:45 ]
>>602
うん。本格的な文字列処理とか正規表現とかやりたいんだったらruby使えばいいと思う。

エンコードの問題の他にもPythonは文字列処理のしにくさを抱えている。
rubyやらがどうなってるかは知らんが、Pythonでは文字列は変更不可能な型だから破壊的な処理ができなくて、
一文字でも変更しようと思ったらインスタンスを作り直すことになる。



604 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 12:52:04 ]
じゃあperlでいいや

605 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 14:03:37 ]
変更可能な文字列型があるのはともかく
デフォルトの文字列が変更可能なのはダメだろ……

606 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 14:11:55 ]
ruby使うぐらいならperlの方がまだマシだな

607 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 14:59:11 ]
ruby って結局 perl の汚いところと C++ の汚いところを両方引き継いでるよね www

608 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 15:42:44 ]
from ctypes import *
s = "aaaaa"
get_charptr = lambda s, pos: c_char_p(memset(s, 0, 0) + pos)
memset(get_charptr(s, 2), ord('b'), 2)
print s
# ===> aabba

まったく推奨しないが、こういう変換方法もないわけではない。

609 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 16:03:03 ]
>>608
流石にそれでctypes使うのは行き過ぎじゃないのかな
大抵arrayでいいと思う

610 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 16:43:15 ]
以下のようにlistにして変更して最後に''.joinとかはどうだろうか。
ham = list('ham')
ham[1] = 'm'
ham = ''.join(ham)

611 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 17:10:32 ]
>>609
>一文字でも変更しようと思ったらインスタンスを作り直すことになる。
への反例だろ

612 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 17:13:43 ]
>>610
それはインスタンスを作り直すことになるだろ

第一listは文字列じゃないし

613 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 17:15:49 ]
アイライクシーライク



614 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 17:27:22 ]
>>611
は?arrayってinplaceで変更できるでしょ
x = array.array('c')
x.fromstring('abcde')
x[4] = 'D'
とか

615 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 18:13:08 ]
arrayは文字列じゃない

616 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 18:15:25 ]
っつーか「インスタンスの作り直し」の意味が判ってないアホがいるなw

617 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 18:15:27 ]
ああ、Stringがimmutableな世界で、StringBuilderみたいなものも
使わない方向で考えたわけね
やっと意味分かった、すまんかった


618 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 18:18:53 ]
>>614
先生!
s が変わりません!

>>> import array
>>> s = 'hogehogefugafuga'
>>> x = array.array('c')
>>> x.fromstring(s)
>>> x[4] = 'D'
>>> x
array('c', 'hogeDogefugafuga')
>>> s
'hogehogefugafuga'

619 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 18:20:13 ]
>>618
うん、意図を誤解してた
「C風にinplaceなバイト列の編集がしたい」という話だと思っていて、
immutableなstringを「弄る」ことを本質だと思ってなかった

620 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 18:23:55 ]
>>619
先生ごめん
reload してなくて入れ違いになった

621 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 21:51:30 ]
文字列がimmutableなのは別にかまわん。
問題は、時々EUCのdecodeに失敗すること。
面倒でかなわんぜ。

622 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 21:54:10 ]
ignore指定すりゃええが

623 名前:デフォルトの名無しさん mailto:sage [2010/04/17(土) 21:56:07 ]
>>621
euc_jpを使っているのなら
euc_jisx0213を使えば少しマシになるかも



624 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 00:50:08 ]
>>622
今はそうしてる。
エラーがあったかわからないのが困るが…

>>623
ありがとう。試してみるよ。

625 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 02:02:18 ]
〜が変になるね

626 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 02:18:45 ]
誰がマッピングを間違えたんだろうな

627 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 02:42:56 ]
カと力が間違われなくてよかったな

628 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 14:05:07 ]
decimalってデフォルトだと四捨五入するらしいんですが
精度を2に設定した下記の計算では切り捨てられています。
これはどういうことでしょう??本来ならDecimal("2.1")になると思うのですが・・・。

>>> import decimal
>>> decimal.getcontext().prec = 2
>>> a = decimal.Decimal(str(1.01))
>>> b = decimal.Decimal(str(1.04))
>>> a + b
Decimal("2.0")


629 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 14:20:01 ]
decimal.Decimal(str(1.01+1.04))
>Decimal("2.05")
decimal.getcontext().prec = 3
a = decimal.Decimal(str(1.01))
b = decimal.Decimal(str(1.04))
a + b
>Decimal("2.05")

630 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 14:24:27 ]
>>> decimal.getcontext()

631 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 14:25:54 ]
途中で投稿してしまったが、
python decimal 四捨五入
でGoogle検索すればデフォルトで四捨五入されるなんてことはないと分かるはず

632 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 14:30:10 ]
食いつきのいいえさだな

633 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 14:32:30 ]
食いつきのいい餌ってなんだよ
餌は生きたサメでアジでも釣るのか?



634 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 14:34:58 ]
>>633
>>633
>>633

635 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 14:39:58 ]
>>628
Pythonライブラリリファレンスのやつは読んだ?
DecimalはFAQもあるからそれ読んだほうがいいよ

636 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 14:48:25 ]
pygameの64bitピルドのパージョンはリリーズされてるんですかね?

637 名前:628 mailto:sage [2010/04/18(日) 16:49:02 ]
>>631
ありがとうございます。四捨五入では無いですね。
オライリーのPythonクックブックに四捨五入って記載されていたので。。。


638 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 16:56:34 ]
ひどすwww

639 名前:デフォルトの名無しさん [2010/04/18(日) 17:01:57 ]
>>637
四捨五入されるなんてどこにも書かれてないぞwww
ttp://www.python.jp/doc/pdf/release/tut.pdf


640 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 17:04:38 ]
>>637
立ち読みすればわかるけどクックブックは初心者向けの章がごっそり削られてるから初心者は買わないほうがいい

641 名前:628 mailto:sage [2010/04/18(日) 18:03:39 ]
>>639
チュートリアルでなくクックブックの方です。

beebee2see.appspot.com/i/agpiZWViZWUyc2VlchQLEgxJbWFnZUFuZFRleHQYl5NlDA.jpg

p117
beebee2see.appspot.com/i/agpiZWViZWUyc2VlchQLEgxJbWFnZUFuZFRleHQYoONsDA.jpg



642 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 21:10:09 ]
Decimal.quantizeのオプションで指定すれば四捨五入してくれる

643 名前:628 mailto:sage [2010/04/18(日) 22:51:21 ]
>>641
2枚目の写真横向きで撮ればよかった。こういうセンスが足りないんだよなぁ



644 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 22:56:22 ]
は?

645 名前:デフォルトの名無しさん mailto:sage [2010/04/18(日) 22:59:58 ]
pythonの公式オフ会に参加した奴いる?

646 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 01:54:45 ]
単三電池の方なら参加されたのではないでしょうか

647 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 03:10:40 ]
彼は単二電池を入れることができるまでに成長しました

648 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 15:14:02 ]
質問です
Pythonではglobal変数を関数内では更新できない
らしいことをようやくながらおぼろげに理解しました

複数の関数内にて更新すべきglobal変数を多く抱えている場合
これらの全てにglobal宣言していくしかないのでしょうか?

649 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 15:15:50 ]
うん

650 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 15:23:31 ]
>>649
そすか
こりゃ1から書き直した方が良いのかもしれん…

651 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 15:37:00 ]
module にするだけでも楽になるよ

652 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 16:12:17 ]
そういう場合は自分はまとめてクラスにしてしまう。

けど何か負けたような気がするのも確か。


653 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 17:14:00 ]
辞書にすればいいんじゃね?
辞書をグローバルに置くと、辞書そのものは変更できないけど
要素は(グローバル宣言しなくても)好き勝手に変更出来る。



654 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 17:24:03 ]
なんのためのクラスだよ
静的クラス使えばよし

655 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 17:44:47 ]
静的クラスってなんだよ
monostateパターンのことか?

656 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 17:49:08 ]
クラス変数と静的メソッドを併用しろってことでhそ

657 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 17:55:22 ]
で、そのクラス変数をglobalに置いて(ry

658 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 17:57:05 ]
マジレスすると
globals.py
とかを作ってそこに全部global変数書く

他のコードから使うときは
import globalsして、
全部
globals.foo
でいい
global文要らなくなる

659 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 18:10:40 ]
今は角電池くらいがちょうどいいです。

660 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 18:16:07 ]
>>658
正解

661 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 18:25:21 ]
昔は電池と言っただけでこのスレがあっというまに埋まったのに

662 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 18:46:19 ]
突拍子もないセンスもないので廃れました

663 名前:デフォルトの名無しさん mailto:sage [2010/04/19(月) 18:49:42 ]
ぼるたんの電池おっきいです。



664 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 00:12:00 ]
ぼるたん?

665 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 00:17:13 ]
>>658
別ファイルに隔離することも目的の一つならいいんだけど、そうでないなら
globals()['foo']
でよくね?

666 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 00:33:45 ]
>>665
毎回そんな風にタイプしたくないべ

667 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 01:03:14 ]
>>666
g = globals()
g['foo'] = 'foooo'
print foo
# ==> foooo

668 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 02:03:10 ]
>>658
pylonsのg.(グローバル変数),h.(ヘルパー関数),c.(コンテキスト)みたいな使い方だろ。
こんな感じだったっけ。

globals.py:
class Globals: a = 1
g = Globals()


app.py:
from globals import g

g.b = 2

def hoge():
    print g.a, g.b
    g.c = g.a + g.b
    g.a = 4

hoge()
print g.a, g.b, g.c

グローバル変数を余所で書き換えたり、定義するのはアレだが例なので。
実際のg.はグローバル定数として使って、リクエスト毎にc.(コンテキスト)を処理していく感じ。

669 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 10:48:27 ]
XMLを処理するには何がお勧めでしょうか? 色々と選択肢があって
迷います。 使い方としてはデータモデルを定義したXML(たぶんW3C XML Schema)を
読み込み、そのツリーを辿りながらテンプレートエンジンCheetahを使って
コード生成するという考えでいます。

選択肢としてはlxmlとElementTreeがあるように思えますが、他にもありますでしょうか? 
使っているのはPython 2.4なのですが、ElementTreeは2.5で標準装備になったという事で、
これがベストだと判断されたという事でしょうか?

670 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 11:01:50 ]
せやで!

671 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 11:24:00 ]
ElementTree は小さすぎるので、自分は全部 lxml だけれど、
ElementTree で処理がすむならそれでいいと思う。
速度や機能が不足したら lxml を入れれば、移行は大して
手間がかからないし。


672 名前:669 mailto:sage [2010/04/20(火) 11:33:08 ]
>>671
なるほど。 ということはElementTreeはlxmlのサブセットという理解で
いいのですね。 

673 名前:669 mailto:sage [2010/04/20(火) 11:53:32 ]
>>671
ちなみにRPMパッケージでもないかなと探し始めたらlibxml2ライブラリに付属するPython
バインディングでlibxml2-pythonというパッケージがインスコされている事に気づきました。

これはあまり主流ではないのでしょうか? 



674 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 12:41:25 ]
yaml使えや

675 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 15:43:32 ]
Yaml知りませんでした。 参考にさせていただきます。

676 名前:デフォルトの名無しさん [2010/04/20(火) 16:08:02 ]
>>669
amara Gnosis_Util

Cheetahは今時ありえない。spitfireなりchameleon.genshiなり使ったほうがいいかと

677 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 16:48:54 ]
>>676
>amara
っげ、また選択肢が(汗)

> Gnosis_Util
あの、ググったら3ヒットだったんですがw これ全部ネタじゃないでしょうね?

>Cheetahは今時ありえない。spitfireなりchameleon.genshiなり使ったほうがいいかと

そうだったんですか! いや、それぞれのサイトを見てると流行り廃りの実感は良く分かりませんね.
Cheetahは今でもある程度頻繁にアップデートされているので廃っているとは感じませんでした。
テンプレートの文法のコンパクトさが気に入ってたのですが。

薦められた他のも検討してみます。

678 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 17:21:51 ]
日本語のみ検索でググるとは言わんだろ

679 名前:677 mailto:sage [2010/04/20(火) 17:44:41 ]
>>677
あ、Gnosis-utilsで沢山ヒットしましたw。 英語環境でwww.google.comで
ググってますがgnosis_utilは本当に3ヒット。 

680 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 17:54:05 ]
アンダーバーの意味はモジュール名だろ
というかそれをスペースで区切って検索するのが普通だろ

681 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 18:36:06 ]
648です。一応事後報告だけ
モジュールでどうにかしようとするもダメ
リストや辞書なら行けそうとあたりを付けたがダメ
モジュールに辞書置いてどうにか動きましたとさ

もっと早くここに戻ってれば良かったorz
参考意見を見ながらもうちょっと色々試してみます
どもでした

682 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 18:49:25 ]
>>681
クラス使えって散々いわれてるだろ。

class Foo: pass
Foo.bar = 1
Foo.baz = 2

これなら用途ごとに分けられるし、スタティックメソッドで処理書けたりと便利。

683 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 23:25:46 ]
過去のスレも見てればわかるが
時期によっては変なレスつける奴が多い
グローバル変数にglobalsだとか辞書だとかなんて初めて聞いたわ



684 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 23:30:10 ]
誰にでも初めてはあるさ
少しずつ成長していこう

685 名前:デフォルトの名無しさん mailto:sage [2010/04/20(火) 23:42:37 ]
>>683
class使えってのはもう出てたから、別のを出したまでだ。

686 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 01:49:38 ]
There's more than one way to do it!


687 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 06:51:25 ]
more than one way ということは 1 つとは限らないから
There's じゃなくて There are じゃないのかな

688 名前:669 mailto:sage [2010/04/21(水) 08:31:56 ]
>>676
結論としてはお勧め頂いたパッケージはどれも2年ほどアップデートがされておらず、
半死亡状態と判断しました。 今のところドキュメントも整っており、最近もリリースが
行われているlxml+Cheetahで行こうと思います.

689 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 09:52:30 ]
過去のスレ読んでない奴は初心者スレ行けってことですね

690 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 20:54:04 ]
>>687
ttp://en.wikipedia.org/wiki/There%27s_more_than_one_way_to_do_it

691 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 21:05:54 ]
There's なのは知ってるんだけど
文法上なんでそうなるのってことだろう

>>687
q.hatena.ne.jp/1183288572
www.biseisha.co.jp/lab/lab1/24.html

692 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 21:08:21 ]
不可算名詞じゃね?

693 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 22:47:36 ]
one way って数えてるんですけど



694 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 22:49:53 ]
one wayは色んな道って意味だろ
まさかoneを1と解釈してる訳じゃないだろうな?

695 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 22:50:44 ]
en.wikipedia.org/wiki/There's_more_than_one_way_to_do_it


696 名前:695 mailto:sage [2010/04/21(水) 22:51:57 ]
すまん、既出だったな

697 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 22:57:44 ]
>>691
勉強になりました
ありがとうございました

698 名前:デフォルトの名無しさん mailto:sage [2010/04/21(水) 23:01:26 ]
academy6.2ch.net/english/

699 名前:デフォルトの名無しさん mailto:sage [2010/04/24(土) 10:06:43 ]
組込言語として使う場合なんだけど、
C++のクラスとかをPython側
に公開するのに
オススメなバインダーとかありますか?

700 名前:デフォルトの名無しさん mailto:sage [2010/04/24(土) 10:36:05 ]
ctypes
swig
cython

701 名前:デフォルトの名無しさん mailto:sage [2010/04/24(土) 10:47:43 ]
>>699
boost.python

702 名前:デフォルトの名無しさん mailto:sage [2010/04/24(土) 10:49:11 ]
ExtensionじゃなくてEmbeddingだよね
boost.pythonがいいんじゃないの
ttp://wiki.python.org/moin/boost.python/EmbeddingPython


703 名前:702 mailto:sage [2010/04/24(土) 10:50:06 ]
かぶった



704 名前:デフォルトの名無しさん mailto:sage [2010/04/24(土) 12:26:44 ]
>>700-702
さんくす
boost.pythonすごいですね これ使ってみます

705 名前:デフォルトの名無しさん mailto:sage [2010/04/24(土) 12:58:17 ]
みんなのPythonのWebアプリ編って2.6でも大丈夫でしょうか?


706 名前:デフォルトの名無しさん mailto:sage [2010/04/24(土) 14:17:44 ]
ok

707 名前:デフォルトの名無しさん [2010/04/24(土) 22:50:02 ]
www.python.org/dev/peps/pep-3146/
これCPythonが大量にメモリーを食うようになるということ?

708 名前:デフォルトの名無しさん mailto:sage [2010/04/24(土) 22:52:25 ]
今時メモリ使用量を気にするようなやつはクソか鯖缶のヘタレ野郎だけだ。

709 名前:デフォルトの名無しさん mailto:sage [2010/04/24(土) 22:58:19 ]
なるほど、おれがメモリ使用量を気にする理由がわかった

710 名前:デフォルトの名無しさん mailto:sage [2010/04/24(土) 23:28:08 ]
バイナリでかすぎだろ>>Unladen Swallow

711 名前:デフォルトの名無しさん [2010/04/24(土) 23:34:26 ]
>>710
LLVMがでかいんじゃないの?

712 名前:デフォルトの名無しさん mailto:sage [2010/04/25(日) 00:25:42 ]
>>711
そうらしいけどpy2exeとかで配布しにくくなるなあ

713 名前:デフォルトの名無しさん mailto:sage [2010/04/25(日) 00:29:02 ]
今時ファイル容量を気にするような



714 名前:デフォルトの名無しさん mailto:sage [2010/04/25(日) 11:00:55 ]
なんか実行速度が1.N倍程度のオーダーなのに
バイナリが10倍オーダー、起動時間も遅くなるってシロモノに見えるのは
気のせいか

715 名前:デフォルトの名無しさん mailto:sage [2010/04/25(日) 12:01:47 ]
ベイジアンフィルタが酷いことになってるなww

将来性はあるのかもしれないが、少なくとも現状では入れる価値があるようには見えない。

716 名前:デフォルトの名無しさん mailto:sage [2010/04/25(日) 12:28:50 ]
PyPyの方が速いね
speed.pypy.org/overview/






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

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

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