Форум программистов, компьютерный форум, киберфорум
Python
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 24.02.2017
Сообщений: 46

Нужны комментарии к коду

17.05.2017, 21:50. Показов 1223. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет! Кто знает, обьясните что делает каждая строка этого кода (можно свой подобный написать, но с хештегами у каждой строки)(КОД писал НЕ я) :
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
import msvcrt
import time
 
 
def input_wait(prompt='', timeout=1000, *, _delay=0.02):
    inpute_line = str()
    start = time.time()
 
    while time.time() - start < timeout:
        prompt_t = '\r{:.1f}| {}{}'.format(timeout - time.time() + start,
                                           prompt, inpute_line)
        print(prompt_t, end='')
        
        if msvcrt.kbhit():
            char = msvcrt.getwch()
            if char == '\r':
                msvcrt.putwch('\n')
                break
            elif char == '\000' or char == '\xe0':
                msvcrt.getwch()
                pass
            elif ord(char) == 8: # backspace
                print('\r{}'.format(' ' * len(prompt_t)), end='')
                inpute_line = inpute_line[:-1]
            else:
                inpute_line += char
        else:
            time.sleep(_delay)
    else:
        inpute_line = None
    
    return inpute_line
 
 
 
timeout = 10
prompt = 'Enter answer: '
 
print('Сколько будет 5 + 5?')
print('у вас есть 10 секунд')
 
while True:
    answer = input_wait(prompt, timeout=timeout)
    
    if answer is None:
        print('\nTime is up')
    else:
        if answer == '10':
            print("It's right answer!")
        elif answer == 'q':
            print('exit...')
            break        
        else:
            print("No! Try again.")
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.05.2017, 21:50
Ответы с готовыми решениями:

Нужны комментарии к коду
Здравствуйте, мне не понятен этот участок кода, не могли бы вы пояснить import zmq_robot import time import math from pprint import...

Нужны комментарии к коду
def digits(n): i = 0 while n &gt; 0: n = n//10 i += 1 return i num = abs(int(input('Введите...

Нужны комментарии к коду
Всем доброго дня! Помогите разобраться с кодом в Python, пожалуйста. def freq1(s): s = s.lower(); # как я поняла приводит...

1
757 / 306 / 190
Регистрация: 20.05.2016
Сообщений: 593
18.05.2017, 13:40
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
def input_wait(prompt='', timeout=1000, *, _delay=0.02):
    inpute_line = str()  # сюда будем складировать вводимые символы
    start = time.time()  # начинаем в это время
 
    # пока не истекло отведенное для ввода время
    # переданное в параметр timeout
    while time.time() - start < timeout:
    
        # фомируем приглашение к вводу + введенный на данный момент
        # пользователем текст
        prompt_t = '\r{:.1f}| {}{}'.format(timeout - time.time() + start,
                                           prompt, inpute_line)
        print(prompt_t, end='')
        
        # если пользователь нажал клавишу
        if msvcrt.kbhit():
            char = msvcrt.getwch()  # читаем её
            
            # мы вынуждены "руками" обрабатывать функциональные клавиши
            
            # если эта клавиша - enter
            if char == '\r':
                msvcrt.putwch('\n')  # переходим на новую строку
                break                # обрываем цикл ожидания
            
            # если клавиша функциональная/специальная
            elif char == '\000' or char == '\xe0':
                # должны вызвать getwch ещё раз, чтобы удалить
                # её из входной очереди
                msvcrt.getwch()
            
            # клавиша backspace
            elif ord(char) == 8: # backspace
                # затираем строку пробелами, иначе стёртый  символ
                # останется висеть в хвосте
                print('\r{}'.format(' ' * len(prompt_t)), end='')
                # удаляем последний символ
                inpute_line = inpute_line[:-1]
            
            # прочие символы
            else:
                # дабовляем символ к уже введеным
                inpute_line += char
        
        # никакая клавиша не нажата, недолго спим (чтобы не кушать 
        # зазря время процессора)
        else:
            time.sleep(_delay)
    
    # если попали сюда, значит не был нажат enter
    # и истекло отведенное для ввода время
    else:
        inpute_line = None  # возвращаем None
    
    return inpute_line  # возвращаем пользовательский ввод - он успел
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.05.2017, 13:40
Помогаю со студенческими работами здесь

Смена фонового изображения, нужны комментарии к коду
Всем доброго времени суток!Я хотел бы узнать подетально как работает каждая строчка в данном коде.Я новичок,так что не судите строго:) ...

Требуются комментарии к коду, TPG
объясните, пожалуйста, как это работает и то, что здесь используется(препод может тыкнуть пальцем в любое и спросить, а теории я даже найти...

Нужны комментарии к программе
studs = {} n = int(input(&quot;Количество студентов: &quot;)) s = 0 for i in range(n): sname = input(str(i+1) + &quot;-й студент: &quot;) ...

Нужны комментарии к коду
Здравствуйте! Нашел в интернете некое решение, код которого написан на Python. Мне нужно это же выполнить на другом языке (php, perl, не...

Нужны комментарии к коду
всем привет. вроде задачка простая, но я никак не могу объяснить правильный ответ xs = res = * 2 if xs: res = True ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru