が、私はのように見えるテキストファイル持っているとしましょう:「ファイル内の行のための」:中readine()を使用Pythonの:ループ
a
b
start_flag
c
d
e
end_flag
f
g
私はラインで、このデータ・ラインを反復したいのが、私「start_flag」を遭遇し、私は「end_flag」に到達するまで反復との間で行数をカウントする:
newline = ''
for line in f:
count = 0
if 'start_flag' in line:
while 'end_flag' not in newline:
count += 1
newline = f.readline()
print(str(count))
このコードの予想される動作は何ですか?
a
b
start_flag
c
d
e
end_flag
f
g
または::
a
b
start_flag
c
d
e
end_flag
c
d
e
end_flag
f
g
なぜあなたはそれを試して自分自身を見つけ出すのではなく、どのように働くのでしょうか? 'readline'とファイルの反復を混在させることは十分にサポートされていませんが、' next(f) '(または別の' for'ループ)を使うと、ファイルは独自のイテレータなので、最初の例のように動作します。 – Blckknght
私はそれをテストし、他に誰も望んでいなければ回答を投稿します。提案にも感謝します。 – Umibozu
私の結果は次のように示しています:a、b、flag、fag、c、d、e、f、g ....だから私はあなたの選択肢を得ていません.... – D3181