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


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

Pythonのお勉強 Part34



1 名前:デフォルトの名無しさん mailto:sage [2009/07/01(水) 22:23:19 ]
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/1240678081/

252 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 07:48:58 ]
関数の中から実引数の数を調べることはできますか。

def f(a, b=1, c=None):
 print (a, b, c)

とあって、f(0) という呼び出し方をした時に、f() の中で実引数の数がいくつなのかを調べる方法があれば教えてください。

253 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 08:07:59 ]
バイトコード調べれば何とか…
じゃなくて
def f(*args):
    defaults = (None, 1, None, )
    len(args) で調べる
    args = tuple(args) + defaults[len(args):]
とかした方がいい

254 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 08:59:52 ]
>>252
www.python.jp/doc/2.4/lib/inspect-classes-functions.html

標準モジュールも知らない低レベルプログラマは
今すぐPythonやめてPHPに戻れよ

255 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 09:04:44 ]
found = None
for x in L:
 if something(x) == expected:
  found = x
  break
という処理をもっと簡潔にかけますか。
Ruby なら
found = L.find {|x| something(x) == expected }
という処理です。
内包表記で頑張ろうと思ったのですがbreakの仕方がわからず断念しました。
#Rubyは説明のために出したのであり、PythonとRubyとの比較をするつもりではないのでご了承下さい。

256 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 09:54:57 ]
[i for i in xrange(10) if i >= 7][0]

257 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 10:15:34 ]
>256 だといったん完全リストにしちゃうから
元が xrange(一億) とかだった場合にすげー重くならない?

イテレータ使ってても,リスト内包表記で一旦
リスト化しちゃうと遅延評価はされなくなっちゃうよね?

258 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 11:37:56 ]
>>239
なんで?

おすすめは
zope
web.py
なの?


259 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 12:00:59 ]
(i for i in xrange(10) if i >= 7).next()

260 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 12:12:43 ]
>>259
スゲー
面白い書き方だなw



261 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 12:54:59 ]
>>254
牛乳飲めよ

262 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 13:12:03 ]
>>261
PHPに戻れよドカタ

263 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 13:18:20 ]
>>258
Django自体は問題ナッシング
むしろすばらしい
問題は日本のヤツら

264 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 14:54:13 ]
Djangoの中に遅延評価関数とか入ってるからwebやらなくても使ってみたい気はする

265 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 15:14:13 ]
Formがもうちょっとイカしてくれてればなぁ
っていうか web 板の django スレが寂しすぎる件

266 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 18:01:09 ]
Djangoのutilsには,便利なクラスや関数がたくさんあるので
utilsだけで使うことが良くあるよ

267 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 22:28:19 ]
>>259
ありがとうございます!
でもPython3で動かない。。。。
Python2と3の両方で動く書き方はありませんか?
聞いてばかりですみません。

268 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 22:47:03 ]
>>267
python3の場合

(x for x in range(10) if x>=7).__next__()

269 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 23:10:51 ]
>>268
next(x for x in range(10) if x>=7)
だろ

270 名前:デフォルトの名無しさん mailto:sage [2009/07/28(火) 23:18:40 ]
ごめん



271 名前:デフォルトの名無しさん mailto:sage [2009/07/29(水) 01:56:49 ]
Don't mind.

272 名前:デフォルトの名無しさん mailto:sage [2009/07/29(水) 06:29:23 ]
>>255
found変数をどう使いたいのか判らないけど、Pythonのfor文には
else 節があるので、後で if found is None: return とかするのであれば
その for 文を
for found in L:
  if something(found) == expected:
    break;
else:
  return
みたいにはできるよ。

あと、 >>269 みたいなやり方をするなら、
found = next(x for x in L if somethong(x) == expected, None)
って二つ目に default を入れないと、見つからなかったときに next が
StopIteration 例外を出すよ。

273 名前:デフォルトの名無しさん mailto:sage [2009/07/29(水) 06:34:35 ]
sunkus

274 名前:デフォルトの名無しさん [2009/07/29(水) 09:54:00 ]
>>252 f() の中で実引数の数がいくつなのかを調べる方法があれば教えてください。

無理。デフォルト引数処理は関数呼び出しの直前に行われるから、f(..) の中ではデフォルト引数値が使われたか否かは判別できない。253 さんの示したように、関数の呼び出し方を変えて自分で調べるしかない。

ここらの Python の内部処理を知りたかったら www.nasuinfo.or.jp/FreeSpace/kenji/sf/python/virtualMachine/PyVM.htm を読め。少しマニアックだが。


275 名前:デフォルトの名無しさん mailto:sage [2009/07/29(水) 11:49:53 ]
class foo:
  def __init__(self):
    self.bar = range(5)
  def __call__(self):
    self.bar.reverse()
class hoge:
  def __init__(self):
    self.hage = foo()
    self.foobar = self.hage.bar
    self.hage()
cls = hoge()
print cls.foobar == cls.hage.bar


.foobarには、.hage.barの値をコピーしているだけですか?
それともポインタ的なものが入ってるんでしょうか?

276 名前:デフォルトの名無しさん mailto:sage [2009/07/29(水) 12:10:48 ]
barの型次第
上の場合はリストだから参照になるね

277 名前:252 mailto:sage [2009/07/30(木) 07:00:23 ]
>>254
>標準モジュールも知らない低レベルプログラマは
>今すぐPythonやめてPHPに戻れよ

みなさんの怒りを買うような質問をしてしまい、申し訳ありませでした。


278 名前:252の母 mailto:sage [2009/07/30(木) 10:17:41 ]
息子がご迷惑をおかけして申し訳ありませんでした。

279 名前:252の父 mailto:sage [2009/07/30(木) 11:06:55 ]
息子にはPythonをあきらめてPHPに戻るようによく言い聞かせました

280 名前:デフォルトの名無しさん mailto:sage [2009/07/30(木) 13:21:43 ]
いやいや、誰もが最初はそんなもんですから。



281 名前:デフォルトの名無しさん mailto:sage [2009/07/30(木) 13:35:18 ]
話がまとまったところで、あとは若い人たちに任せるとしましょう。

282 名前:デフォルトの名無しさん mailto:sage [2009/07/30(木) 15:24:22 ]
おまえら表面は凍ってるのに中身は生暖かいのな。

283 名前:デフォルトの名無しさん mailto:sage [2009/07/30(木) 23:55:49 ]
今からpython勉強するなら、2.6.2と3.01どっちがおすすめ?

284 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 00:15:39 ]
仕事で必要なら、必要な方なのは置いといて。
私は、stringが完全Unicodeになってる3をすすめます。

285 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 00:50:07 ]
初めてPYTHONをやり、最初、2.4入れて
setが使えないので、1ヶ月で2.5に移行
その後、文字化けが面倒なので2ヶ月で3に移行
最初から3にすれば良かった
てかemacsで文字化けする
しかもWindowsのエラーで、プロンプトからemacs起動出来ないから直し方わかんね
結局UTF-8使ってない

286 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 00:58:21 ]
なるほど、こういう人たちがいるがために今の状況があるわけか

287 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 01:07:20 ]
ライブラリが全然ついて来ないから
未だに 2.x だけどな。

288 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 01:13:02 ]
3.1は失敗作だったねえ。Python5.0に期待。
対するRubyは1.9.2でだいぶ動作がマシになった。
完全に抜かれちゃったなあ

289 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 06:29:42 ]
pass

290 名前:283 mailto:sage [2009/07/31(金) 07:11:16 ]
ありがとうございました
参考にします



291 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 11:55:24 ]
>>283
用途次第だけど2.5がライブラリ豊富で一番良いよ

292 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 12:43:59 ]
2.6 でなく 2.5 を勧める理由が意味不明

293 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 12:45:54 ]

2.5 でなく 2.6 を勧める理由が意味不明


294 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 13:42:38 ]
ダンジョーも動かない2.6を勧める理由が意味不明

295 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 14:29:15 ]
2.5.2で間違いない

296 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 17:29:14 ]
>>294
サーバが止まりまくりのDjangoなんて使えたって意味ないだろ

297 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 18:04:01 ]
ジャンゴが止まりまくるってどんな環境よ

298 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 18:23:07 ]
デベロップ用のサーバで公開したのかなw

299 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 22:28:32 ]
ttp://djangoproject.jp/

どうして止まるんだろう...。

300 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 22:34:20 ]
>>299
デベロップ用のサーバで公開したのかなw



301 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 22:46:12 ]
マルチコアのCPUで並列実行させたいんですが、
Pythonのthreadやthreadingモジュールだと
実際には同時平行で複数のスレッドが実行されないって本当ですか?
並列化するのにお勧めのモジュールってありませんか?


302 名前:デフォルトの名無しさん mailto:sage [2009/07/31(金) 23:03:13 ]
>>301
ja.wikipedia.org/wiki/%E3%82%B0%E3%83%AD%E3%83%BC%E3%83%90%E3%83%AB%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%97%E3%83%AA%E3%82%BF%E3%83%AD%E3%83%83%E3%82%AF
docs.python.org/library/multiprocessing.html

303 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 01:35:18 ]
>>302
すみません、わかりません。答えを教えてください。

304 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 02:47:30 ]
>>303
ja.wikipedia.org/wiki/CPython#.E4.B8.A6.E5.88.97.E6.80.A7.E3.81.AB.E9.96.A2.E3.81.99.E3.82.8B.E5.95.8F.E9.A1.8C

305 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 06:49:35 ]
GILが問題になるようなプログラムにPythonは向いてないよ

306 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 07:33:59 ]
>>301
multiprocessing モジュールがお勧め。並列性のある問題を解くのに使えば
複数プロセスが同時に並列実行されてちゃんと台数効果が出ます。

307 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 07:42:54 ]
>>299
まだ止まってんのかwwwwww

308 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 09:01:10 ]
僕たちサーバ管理よりイベントが大好きなんです
アッーー!

309 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 10:37:07 ]
>>302>>306
ありがとうございます。
GILがあって今一つ並列実行しにくいのでプロセスをフォークするんですね。
スレッドのタスクが重ければフォークのコストは大したことないですが、
リソースの共有が大変になるんでしょうか。
Core i7で8コアもあるのでそろそろ並列化をまじめに考えなくちゃと思っているので、とりあえずいじってみます。
それから>>303は私じゃないです。


310 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 11:04:31 ]
ドジャンゴもマルチプロセス使えば落ちないんじゃねえのwwwwww



311 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 12:08:53 ]
件のページはdjangoじゃなくてサーバ自体が落ちてんだろ
煽ってるバカ何なの

312 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 13:42:23 ]
Djangoがサーバを落としたの???
なんたるマルウエア!!

313 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 14:34:43 ]
またruby厨の荒らしっすか

314 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 14:47:37 ]
>>311
>件のページはdjangoじゃなくてサーバ自体が落ちてんだろ

Apacheは応答してるっぽいから、サーバ自体が落ちているという事はないのでは?
Dangoの人は適当で信用ならない


315 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 16:28:33 ]
djangoはジャンゴって読むんじゃないの?
昔の有名なギタリストにいるよね

316 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 16:35:36 ]
アンガールズ「ハイ! ジャンゴジャンゴジャンゴジャンゴ」

317 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 17:30:33 ]
そう、djangoは"ジャンゴ"と読みます
一方日本でdjangoを使っている人は"ドジャンゴ"や"ダンジョー"と呼ばれています

318 名前:デフォルトの名無しさん mailto:sage [2009/08/01(土) 19:33:53 ]
そう、djangoは"ジャンゴ"と読みます
一方日本でdjangoを使っている人は"ドジャンゴ"や"ダンジョー"とruby厨は呼びます

319 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 02:03:59 ]
日本語でおk

320 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 02:11:46 ]
民間人に送られる最高の爵位・ダショー。

ちなみに我らがPython神のGuido van Rossumは、BDFLと呼ばれる。



321 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 03:53:30 ]
Djangoは1.1出てたのか・・・

322 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 08:35:11 ]
318はイタいが、320はもっとイタいな(wwWwwWwwwwWwwWWww

323 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 10:52:39 ]
ジャンゴといったらジャンゴ・フェット。

324 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 13:03:55 ]
pass

325 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 16:25:09 ]
ジャンゴジャンジャンゴジャンゴ

326 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 04:07:02 ]
pat = re.compile(r'.*¥.html$')
としたときに、patからもとの文字列('.*¥¥.html$')を取り出すことはできますか。
よろしくおねがいします。

327 名前:デフォルトの名無しさん [2009/08/03(月) 04:14:09 ]
pat.pattern

328 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 04:47:12 ]
>>327
ありがとうございました。
ところで dir(pat) としても pattern というのは出てこないのですが、どういうことでしょうか。

329 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 05:12:00 ]
ttp://djangoproject.jp/

復活したみたい

330 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 08:26:53 ]
>>328
(´・ω・`)知らんがな



331 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 09:44:20 ]
>>329
(´・ω・`)知らんがな

332 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 10:48:23 ]
静的htmlに必要最低限のcgiだけつけたいのだけど
どのフレームワークがお勧めよ

333 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 14:22:49 ]
CGIHTTPServer

334 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 14:23:59 ]
>>332
民間人に送られる最高の爵位・ダショー。

335 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 15:25:06 ]
ダショー >>> ダンジョー >>> ドジャンゴの順で偉いのだが
ダショーレベルでも鯖運営に支障をきたすくらいの低スキル

336 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 18:29:06 ]
意味わからん

ジャンゴの話題になるとどこからともなく湧いてくるな

337 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 19:31:03 ]
>>328
不思議だね。

338 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:04:54 ]
>>328
help(re)
でも出てこない

339 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:09:03 ]
>>328
ttp://www.python.jp/doc/release/lib/re-objects.html
ここの一番下には書いてある

340 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 21:26:11 ]
_sre.cのpattern_getattrが処理してるみたい



341 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 22:13:09 ]
www.kent-web.com/pubc/book/test/uploader/uploader.cgi?mode=downld&no=2304
コメントを取得するコードを参考にして、拡張子を.cgiで実行しましたがスクリプトエラーになってしまいます。
どこが問題でしょうか?

342 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 22:19:23 ]
>>341
人に尋ねる前に自分でデバッグしてご覧。
Webにアップするスクリプトも最初はローカルで動かして様子を見るものなんだよ。

343 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 22:22:02 ]
>>342
ありがとうございます。
出直してきます。

344 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 22:24:23 ]
>>341
そのコードのコピー元と思われるブログには続きがある
d.hatena.ne.jp/imakami/20081224/1230130732

345 名前:デフォルトの名無しさん mailto:sage [2009/08/05(水) 18:45:37 ]
def hello():
 """コメント"""
 print "hello"

Python では上のように関数定義の最初の文字列リテラルが関数のドキュメントになるそうですが、
これの呼び名ってありますか。
「関数コメント」とか「関数ドキュメント」で通じるでしょうか。

346 名前:デフォルトの名無しさん mailto:sage [2009/08/05(水) 18:57:12 ]
>>345
ほい。
www.python.jp/doc/release/ref/types.html

347 名前:デフォルトの名無しさん mailto:sage [2009/08/05(水) 18:59:31 ]
ドキュメンテーション文字列

348 名前:デフォルトの名無しさん mailto:sage [2009/08/05(水) 19:14:09 ]
AndroidでPython使えるんだね。
一気にGoogleケータイ欲しくなった・・・
三月に変えたばかりなんだが。

349 名前:デフォルトの名無しさん mailto:sage [2009/08/06(木) 03:39:03 ]
>>348
ほほう。といっても何に使えばいいのか思い付かない俺ww

350 名前:デフォルトの名無しさん mailto:sage [2009/08/06(木) 15:06:43 ]
Launchpadがdojangoじゃなくてzopeなのは何か理由があるの?



351 名前:デフォルトの名無しさん mailto:sage [2009/08/07(金) 13:19:04 ]
作り始めた時期の問題じゃないかな。
Launchpad作り始めた時は、まだDjangoがマイナーだったとか。想像だけど。

352 名前:デフォルトの名無しさん mailto:sage [2009/08/08(土) 08:11:08 ]
www.python.org つながんないんだけど、なんかあった?
Python ダウンロードしたいんだけど、どこかミラーない?
ftp.python.jp は 2.5 までしかないみたいだし。






[ 続きを読む ] / [ 携帯版 ]

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

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