cpython icon indicating copy to clipboard operation
cpython copied to clipboard

The example using match keyword isn't complete

Open Aljumaily opened this issue 3 years ago • 0 comments

Documentation

The Other Key Features in What’s New In Python 3.10 contains the following code snippet:

from enum import Enum
class Color(Enum):
    RED = 0
    GREEN = 1
    BLUE = 2

match color:
    case Color.RED:
        print("I see red!")
    case Color.GREEN:
        print("Grass is green")
    case Color.BLUE:
        print("I'm feeling the blues :(")

However, the variable color is unknown, hence, NameError: name 'color' is not defined is shown. The solution is the declare a color variable and assign it any of the Color enum values, like so:

from enum import Enum
class Color(Enum):
    RED = 0
    GREEN = 1
    BLUE = 2

color = Color.BLUE

match color:
    case Color.RED:
        print("I see red!")
    case Color.GREEN:
        print("Grass is green")
    case Color.BLUE:
        print("I'm feeling the blues :(")

Aljumaily avatar Aug 14 '22 22:08 Aljumaily