Форум сайта python.su
Приветствую! Прошу подсказать грызущему гранит новичку)
Стоит задача посредством функции получить целое число, но таким способом, что оно будет получено через n минут или секунд.
Получилось реализовать задачу посредством цикла while, типа:
i = 0,5
while i < 100:
print(i)
i = i + i * 0,001
Однако компилятор, во-первых, выдает столбец возрастающих чисел, тогда как требуется, чтобы компилировалось одно возрастающее до нужной величины число, но не огромный столбец чисел, а во-вторых, необходимо контролировать время генерации такого числа. Как быть?
Отредактировано Ewgensky (Май 20, 2017 16:59:30)
Офлайн
Опиши задачу точно.
Ewgensky
Стоит задача посредством функции получить целое число, но таким способом, что оно будет получено через n минут или секунд.
EwgenskyНабор общих слов, под который подходит сотня разных кодов.
Однако компилятор, во-первых, выдает столбец возрастающих чисел, тогда как требуется, чтобы компилировалось одно возрастающее до нужной величины число
Офлайн
i = 0.5 while i < 100: i += i * 0.001 print(int(i))
Офлайн
py.user.next
Опиши задачу точно.
Офлайн
Ewgensky
Конкретно в этом коде компилятор выдает столбец (поток) чисел, тогда как нужно одно возрастающее число.
import time def progress(callback, *args): LOW, HIGH = 0, 20 STRLEN = 3 for i in range(LOW, HIGH + 1): print(' ' * STRLEN + '\r', end='') print('{:02}%'.format(i), end='') time.sleep(1) callback(*args) print() def f(lst): lst.append('x') lst = [] progress(f, lst) lst
>>> import time >>> >>> def progress(callback, *args): ... LOW, HIGH = 0, 20 ... STRLEN = 3 ... for i in range(LOW, HIGH + 1): ... print(' ' * STRLEN + '\r', end='') ... print('{:02}%'.format(i), end='') ... time.sleep(1) ... callback(*args) ... print() ... >>> def f(lst): ... lst.append('x') ... >>> lst = [] >>> progress(f, lst) 20% >>> lst ['x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x'] >>>
Отредактировано py.user.next (Май 22, 2017 01:24:47)
Офлайн
py.user.nextБлагодарю, за наглядные варианты. Будет интересно их разобрать. Жму руку!
Офлайн