If a user enters an invalid string option in python how should I handle the exception?

ak.

I'm writing a rock, paper, scissors, game for a user and computer and I want the user to type in one of the three options i.e "rock" but I'm not sure what kind of exception to use if the user enters say "monkey."

class RockPaperScissors:
    def getUserChoice(userchoice):
        while True:
            try:

                userchoice = input("Type in your choice: rock, paper, scissors: ")
                if userchoice != "rock" or userchoice != "paper" or userchoice != "scissors":
                    raise ValueError("Try typing in your choice again")
                break
            
            except:
                print("Invalid Input.")   
        return userchoice.lower()
user3435121

In this case, you probably do not need an exception.
You probably want to loop again on input().
The following code is more explicit:

class RockPaperScissors:
  def getUserChoice():
    while True:
      userchoice = input("Type in your choice: rock, paper, scissors: ").lower()
        if userchoice in ( "rock", "paper" "scissors"):
          return userchoice
        else:
          print( "Invalid input. Try again.)

The try|except mechanism is more appropriate when you want to handle the error at an upper level.

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

How can I ensure user enters a valid choice?

How should I handle invalid user input?

Exception handling - how to handle invalid datatype in user input?

How do I loop this statement until a user enters 2012?

How to handle exception with parameters in Python

Should I handle a GraphQL ID as a string on the client?

sscanf - How should I handle this?

How do I use recursion to loop my code (when user enters invalid input, it prompts them again)?

How to display message if user enters string instead of integer?

How should I handle exceptions thrown by logger while handling another exception?

How do I handle a KeyError exception in python without exiting the dictionary?

how can i handle an invalid exception handler routine?

How to check if user input is an exact string I gave as an option

How can I store the value a user enters in a variable?

How should I handle the user data after the user login through Facebook

How do I hide the text that the user enters into a password JTextField?

Date string might be one of two formats; how should I handle it?

How should i handle and fix the exception when the Interval of a timer is -1000?

How to make a while loop exit when user enters a certain string?

How to decide whether I should add an exception to the method signature or handle it in the method?

How do I save the text that the user enters into a UITextView

In Websphere, how do I change the page I get redirected to when a user enters an invalid url?

While developing a API wrapper in Python, how should I handle invalid inputs?

How to make code say 'invalid input' when a user enters a character or a string (Validate)

How should I handle user-facing plugins in Electron?

In python, if the user enters a string instead of number (integer value) then how can we show message to user that input is invalid?

How should i convert this string into dict in python?

How can I make python give out an error code if the user enters an integer

How should I handle localization of string which contains multiple variables and some of them should take care of plural

TOP Ranking

  1. 1

    Failed to listen on localhost:8000 (reason: Cannot assign requested address)

  2. 2

    pump.io port in URL

  3. 3

    How to import an asset in swift using Bundle.main.path() in a react-native native module

  4. 4

    Loopback Error: connect ECONNREFUSED 127.0.0.1:3306 (MAMP)

  5. 5

    Compiler error CS0246 (type or namespace not found) on using Ninject in ASP.NET vNext

  6. 6

    BigQuery - concatenate ignoring NULL

  7. 7

    Spring Boot JPA PostgreSQL Web App - Internal Authentication Error

  8. 8

    ggplotly no applicable method for 'plotly_build' applied to an object of class "NULL" if statements

  9. 9

    ngClass error (Can't bind ngClass since it isn't a known property of div) in Angular 11.0.3

  10. 10

    How to remove the extra space from right in a webview?

  11. 11

    Change dd-mm-yyyy date format of dataframe date column to yyyy-mm-dd

  12. 12

    Jquery different data trapped from direct mousedown event and simulation via $(this).trigger('mousedown');

  13. 13

    maven-jaxb2-plugin cannot generate classes due to two declarations cause a collision in ObjectFactory class

  14. 14

    java.lang.NullPointerException: Cannot read the array length because "<local3>" is null

  15. 15

    How to use merge windows unallocated space into Ubuntu using GParted?

  16. 16

    flutter: dropdown item programmatically unselect problem

  17. 17

    Pandas - check if dataframe has negative value in any column

  18. 18

    Nuget add packages gives access denied errors

  19. 19

    Can't pre-populate phone number and message body in SMS link on iPhones when SMS app is not running in the background

  20. 20

    Generate random UUIDv4 with Elm

  21. 21

    Client secret not provided in request error with Keycloak

HotTag

Archive