Я только что наткнулся на этот кусок кода
while 1:
line = data.readline()
if not line:
break
#...
и подумал, должен сделать это лучше, чем использовать бесконечный цикл с break.
Итак, я попытался:
while line = data.readline():
#...
и, очевидно, получил ошибку.
Есть ли способ избежать использования break в этой ситуации?
Редактировать:
В идеале вам не следует повторять readline дважды... ИМХО, повторение еще хуже, чем просто break, особенно если утверждение сложное.
for line in dataхорошо подходит для этой конкретной проблемы, я не думаю, что с идиомойwhile True: ... breakчто-то не так. Не бойтесь этого. :-) - person Kirk Strauser   schedule 09.07.2011