ideas
ideas copied to clipboard
Deprecate (or modify) switch.py
switch.py
should be deprecated, or at least modified because of match
statements that debuted in 3.10.6.
Relevant PEPs:
- PEP 634, Structural Pattern Matching: Specification
- PEP 635, Structural Pattern Matching: Motivation and Rationale
- PEP 636, Structural Pattern Matching: Tutorial
match
statements look like this:
from random import randint
match randint(0, 10):
case 0 | 1 | 2 | 3:
print("Terrible!")
case 4:
print("My favorite number!")
case 5 | 6:
print("Average.")
case 7 | 8:
print("Good!")
case 9 | 10:
print("Terrific!")
case _: # default
print("Uh oh, something has happened.")
My idea is to introduce default:
as an alias of case _:
(which also means disallowing default
from being an identifier). If reserving default
is not an option, just use else
.
The examples included in this repository are just that: examples. They are meant to demonstrate what is possible to do with ideas. So, I do not plan to deprecate any examples - especially since they work with Python 3.6.
Modifying it so that it does not conflict with the match statement is likely a good idea. If you want to submit a PR that does just that, you are more than welcome. :-) Otherwise, I'll eventually do it myself, but this is not a high priority for me.