Хочу написать цикл do while на Python, который бы брал данные на ввод, до тех пор, пока я не введу пустую строку. Как это реализовать?
while True: x, y, z = map(int, input().split(' ')) if input(''): break
Анонимный пользователь Изменен статус публикации
def int_input(): while True: try: yield int(input()) except ValueError: break x, y, *z = int_input()
Встроенная функция iter(function, end_value)
вызывает переданную функцию function()
до тех пор пока она не вернёт end_value
.
for line in iter(input, ''): x, y, z = map(int, line.split()) # use x, y, z here
В данном случае input()
вызывается до тех пор пока пустая строка ''
не вернётся.
Попробуйте:
while True: text = input() if not text: break x, y, z = map(int, text.split())