Сделать похожую на блокировку переменную в Python?

Я спрашиваю, есть ли способ по существу заблокировать остальную часть программы и иметь доступ только к ограниченному набору программы, например

if speech.said("Lock"):
   Lock = true
   speech.say("Locked");

if Lock = true:
   [The continuation of this is my issue.] 

Как мне продолжить эту часть кода? Я также новичок в Python, у меня было всего 3 дня, чтобы работать с ним. Если вы не возражаете против подробного объяснения, любой совет будет с благодарностью! Я делаю это с помощью FreePIE, программируемого эмулятора ввода. Он гораздо более гибкий, чем оригинальный GlovePIE, который был прекращен, а Python гораздо сложнее, чем я ожидал, я застрял в проблеме блокировки на 2 дня... так что буквально все лучше, чем то, что я получил сейчас Любое простое решение для обходных путей.

Еще раз спасибо, Остин.

1 ответ

Решение

Вот пример использования речи на Python и базового цикла:

import string
import speech

locked = False

while True:
    print "Talk:"
    phrase = speech.input()
    if phrase.lower() == "unlock":
        locked = False
    if phrase.lower() == "lock":
        speech.say("Locked")
        locked = True  
    if locked: 
        continue
    print "You said {0}".format(phrase)          
    if phrase.lower() == "exit":
        break

Здесь мы бесконечно зацикливаемся, пока пользователь не введет "Выход". Во время цикла мы:

  • проверить, запрашивал ли пользователь разблокировку, если они сделали, мы разблокируем
  • проверить, запрашивал ли пользователь блокировку; если да, то мы устанавливаем значение true
  • проверьте, не заблокированы ли мы: если мы заблокированы, мы игнорируем ввод и немедленно перезапускаем цикл - вот что continue средства
Другие вопросы по тегам