トップページ > プログラム > 2015年05月19日 > L8E0K9w8

書き込み順位&時間帯一覧

39 位/199 ID中時間01234567891011121314151617181920212223Total
書き込み数0001000000000000000000012



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
くだすれPython(超初心者用) その26 [転載禁止]©2ch.net

書き込みレス一覧

くだすれPython(超初心者用) その26 [転載禁止]©2ch.net
10 :デフォルトの名無しさん[sage]:2015/05/19(火) 03:49:47.58 ID:L8E0K9w8
よろしくお願いします ジェネレータの勉強しています
def gene():
 print(1)
 while True:
  yield
  print(2)
start = gene() #ここで1が表示されて欲しい
next(start) #でもこっちで1になる

「gene()が呼び出された時点でwhileの中にまで進み、yieldの時点で処理がストップする」
こういう挙動だと思ったのですが実際に試してみると違いました
gene()が最初に呼び出された時点でyieldの前のコードを実行する術は無いのでしょうか?
くだすれPython(超初心者用) その26 [転載禁止]©2ch.net
13 :デフォルトの名無しさん[sage]:2015/05/19(火) 23:13:22.76 ID:L8E0K9w8
>>11
ありがとうございます!期待していた通りの挙動になりました
yieldは使いこなせると便利そうですが慣れるまではちょっと怖いですね
思わぬバグを作り込んでしまいそう


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。