¿Cómo puedo poner palabras clave en mi código?

Bien, ¿cómo podría hacer mi código? En lugar de poner 1 a 4, solo pude poner una palabra clave como “Congelar” o “Congelar”. ¿Cómo podría poner un buscador de palabras clave en mi código? 🙂

def menu(): print("Welcome to Kierans Phone Troubleshooting program") print("Please Enter your name") name=input() print("Thanks for using Kierans Phone Troubleshooting program "+name +"\n") def start(): select = " " print("Would you like to start this program? Please enter either y for yes or n for no") select=input() if select=="y": troubleshooter() elif select=="n": quit else: print("Invalid please enter again") def troubleshooter(): print("""Please choose the problem you are having with your phone (input 1-4): 1) My phone doesn't turn on 2) My phone is freezing 3) The screen is cracked 4) I dropped my phone in water\n""") problemselect = int(input()) if problemselect ==1: not_on() elif problemselect ==2: freezing() elif problemselect ==3: cracked() elif problemselect ==4: water() start() def not_on(): print("Have you plugged in the charger?") answer = input() if answer =="y": print("Charge it with a diffrent charger in a diffrent phone socket. Does it work?") else: print("Plug it in and leave it for 20 mins, has it come on?") answer = input() if answer=="y": print("Are there any more problems?") else: print("Restart the troubleshooter or take phone to a specialist\n") answer=input() if answer =="y": print("Restart this program") else: print("Thank you for using my troubleshooting program!\n") def freezing(): print("Charge it with a diffrent charger in a diffrent phone socket") answer = input("Are there any more problems?") if answer=="y": print("Restart the troubleshooter or take phone to a specialist\n") else: print("Restart this program\n") def cracked(): answer =input("Is your device responsive to touch?") if answer=="y": answer2 = input("Are there any more problems?") else: print("Take your phone to get the screen replaced") if answer2=="y": print("Restart the program or take phone to a specialist\n") else: print("Thank you for using my troubleshooting program!\n") def water(): print("Do not charge it and take it to the nearest specialist\n") menu() while True: start() troubleshooter() 

Dado que desea que el usuario escriba la descripción del problema del teléfono, es probable que desee una lista de problemas y palabras clave asociadas a esos problemas. El siguiente progtwig muestra cómo puede organizar dicha base de datos y cómo buscarla en función de la información del usuario. Existen alternativas más rápidas a esta solución (como la indexación de la base de datos), pero esta implementación básica debería ser suficiente por el momento. Deberá proporcionar más código e información sobre cómo resolver problemas, pero las respuestas a su pregunta anterior lo ayudarán a orientarse en ese sentido.

 #! /usr/bin/env python3 # The following is a database of problem and keywords for those problems. # Its format should be extended to take into account possible solutions. PROBLEMS = (('My phone does not turn on.', {'power', 'turn', 'on', 'off'}), ('My phone is freezing.', {'freeze', 'freezing'}), ('The screen is cracked.', {'cracked', 'crack', 'broke', 'broken', 'screen'}), ('I dropped my phone in water.', {'water', 'drop', 'dropped'})) # These are possible answers accepted for yes/no style questions. POSITIVE = tuple(map(str.casefold, ('yes', 'true', '1'))) NEGATIVE = tuple(map(str.casefold, ('no', 'false', '0'))) def main(): """Find out what problem is being experienced and provide a solution.""" description = input('Please describe the problem with your phone: ') words = {''.join(filter(str.isalpha, word)) for word in description.lower().split()} for problem, keywords in PROBLEMS: if words & keywords: print('This may be what you are experiencing:') print(problem) if get_response('Does this match your problem? '): print('The solution to your problem is ...') # Provide code that shows how to fix the problem. break else: print('Sorry, but I cannot help you.') def get_response(query): """Ask the user yes/no style questions and return the results.""" while True: answer = input(query).casefold() if answer: if any(option.startswith(answer) for option in POSITIVE): return True if any(option.startswith(answer) for option in NEGATIVE): return False print('Please provide a positive or negative answer.') if __name__ == '__main__': main() 

Estas buscando una enum

 from enum import Enum class Status(Enum): NOT_ON = 1 FREEZING = 2 CRACKED = 3 WATER = 4 

Entonces en tus cheques, haces algo como esto:

 if problemselect == Status.NOT_ON: ... elif problemselect == Status.FREEZING: ...