@Tarkvimada
7567

Почему приходится вводить Enter чтобы программа дальше работала?

Я делаю программу для воспроизведения музыки, но она почему-то просит ввести Enter чтобы дальше продолжить исполнение кода
def soundplay():
    playsound(directory)
        

def processing_bar():
    for i in tqdm(range(infomp32), ascii=True, desc=play):
        sleep(1)
        


p1, p2 = Thread(target=processing_bar), Thread(target=soundplay)
p2.start()    
p1.start()
    #Вот здесь почему-то появляется пустая строка и до тех пор пока ты не нажмёшь Enter цикл не запуститься
while 1:
    vopros = input("Хотите ли вы что-нибудь послушать? (д/н) ")
    if vopros == "д":
        xren()
    elif vopros == "н":
        break

Как это исправить?
  • Вопрос задан
  • 125 просмотров
Пригласить эксперта
Ответы на вопрос 1
shurshur
@shurshur
Сисадмин, просто сисадмин...
Потому что input считает Enter признаком конца ввода. Пока Enter не нажмёшь, он ожидает ввод.

Тут нужен аналог getch в DOS/Windows, вот пример модуля, который это реализует https://github.com/joeyespo/py-getch
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы