как правильно запустить цикл

avood

Новичок
Пользователь
Ноя 15, 2022
2
0
1
Доброе время суток! В питоне новичок, как и в программировании вообще))) так что сильно не пинайте) , не могу понять как правильно запустить цикл!
задача такая: при нажатии клавиши 2 запускается файл с названием-2 , соответственно если постоянно нажимать 2 то файл постоянно стартует заново. Как сделать так чтобы он запускался один раз , пока не будет нажата клавиша 3 и соответственно запустится файл 3 также один раз пока не будет нажата клавиша 2 и т.д.
Код:
index = int(text)       
        while (True):
            if index == 2:
                print("A")
                os.startfile("c:/2.mp4")
            elif index == 3:
                print("B")
                os.startfile("c:/3.mp4")
            else:
                print("0")
 

4olshoy_blen

Популярный
Пользователь
Ноя 13, 2022
423
115
43
соответственно если постоянно нажимать 2 то файл постоянно стартует заново.
Вопрос: зачем постоянно нажимать на клавишу 2, если она была до этого нажата?
 

avood

Новичок
Пользователь
Ноя 15, 2022
2
0
1
Вопрос: зачем постоянно нажимать на клавишу 2, если она была до этого нажата?
Хороший вопрос! Перефразирую свой! Допустим не постоянно а случайно , или до окончания воспроизведения проигрываемого файла. Например это другой мимо проходящий пользователь, который не знает какой файл сейчас воспроизводиться. Или это не кнопка а например данные с датчика или с камеры , по которым должно произойти некое действие. Вообще вариантов масса , только ваш вопрос к моему не имеет отношения. Я хочу узнать как отслеживать в цикле переменные( если я правильно выражаюсь) чтобы на основании их изменений что-то делать дальше, в целях образования и применения в дальнейшем. Без привязки к конкретной ситуации. В Гугле решения не нашел.
 

4olshoy_blen

Популярный
Пользователь
Ноя 13, 2022
423
115
43
только ваш вопрос к моему не имеет отношения.
Очень странное решение, но раз вы так решили...🤨


Python:
import os, time
from keyboard import is_pressed


# В этом списке указать какие клавиши планируется
# нажимать в процессе работы скрипта
key_list = [
    '1', '2', '3',
    'q', 'w', 'e',
    # и т.д.
]


def func(keys):
    while 1:
        for i in keys:
            if is_pressed(i):
                return i

        time.sleep(.05)


w = func(key_list)

while 1:
    if w == '1':
        print('A')
        os.startfile('c:/1.mp4')

    if w == '2':
        print('B')
        os.startfile('c:/2.mp4')

    if w == '3':
        print('C')
        os.startfile('c:/3.mp4')

    q = w
    key_list.remove(w)
    w = func(key_list)
    key_list.append(q)
 

Форум IT Специалистов