[表示 : 全て 最新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/

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