我的代码中的问题,如何检查变量是否存在

问题描述 投票:-1回答:1

完整代码


import speech_recognition as sr
adLoop = True

detector = sr.Recognizer()

with sr.Microphone() as source:
    detector.adjust_for_ambient_noise(source)
    print("Please speak: ")
    audio = detector.listen(source)
    print("Recognizing...")
    final_text = detector.recognize_google(audio)
    print(f"Converted speech: {final_text}")

    while adLoop:

        print("Would you like to convert more words to text?: Y/N")
        test_audio = detector.listen(source)
        test_text = detector.recognize_google(test_audio)
        if test_text == "yes":
            adLoop = True
            print("go on")
            audio_two = detector.listen(source)
            print("Recognizing...")
            final_text_two = detector.recognize_google(audio_two)
            print(f"Current text: {final_text} {final_text_two}")
        elif test_text == "no" and len(final_text_two) > 1:
            adLoop = False
            print(f"Everything is done, the final text looks like: {final_text} {final_text_two}")    
        elif test_text == "no":
            adLoop = False
            print(f"Everything is done, the final text looks like: {final_text}")
        elif test_text != "yes" or "no":
            print("Something went wrong...Please repeat(Answer Yes or No only)")
            adLoop = True            

[您好,如果用户未输入final_text_two,是否可以通过某种方式检查final_text_two是否存在,因此第30行可以在第27行之后工作。如果未输入final_text_two,我目前遇到错误。

if test_text == "yes":
            adLoop = True
            print("go on")
            audio_two = detector.listen(source)
            print("Recognizing...")
            final_text_two = detector.recognize_google(audio_two)
            print(f"Current text: {final_text} {final_text_two}")
        elif test_text == "no" and len(final_text_two) > 1:
            adLoop = False
            print(f"Everything is done, the final text looks like: {final_text} {final_text_two}")    
        elif test_text == "no":
            adLoop = False
            print(f"Everything is done, the final text looks like: {final_text}")

python python-3.x speech-recognition speech-to-text pyaudio
1个回答
0
投票

我不确定该库的工作方式,但是您可以使用try andexcept。

try:
     print(f"Everything is done, the final text looks like: {final_text} {final_text_two}")

except:
    print("Nothing entered.")
© www.soinside.com 2019 - 2024. All rights reserved.