Warum erfordert Range () in Python, wenn sie aufgerufen werden, aber Keyword -Argumente in einer ÜbereinstimmungserkläruPython

Python-Programme
Guest
 Warum erfordert Range () in Python, wenn sie aufgerufen werden, aber Keyword -Argumente in einer Übereinstimmungserkläru

Post by Guest »

Alle Beispiele, die mit Python 3.13.2 unter Windows 10 getestet wurden. /p>

Code: Select all

>>> range(2, 5)
range(2, 5)
>>> range(start=2, stop=5)
Traceback (most recent call last):
File "", line 1, in 
range(start=2, stop=5)
~~~~~^^^^^^^^^^^^^^^^^
TypeError: range() takes no keyword arguments
< /code>
Bei dem Versuch, das Muster anzupassen, funktioniert es jedoch stattdessen nur mit Schlüsselwortargumenten. < /p>
>>> match range(2, 5):
...     case range(0, y, 1):
...         print('1 argument')
...     case range(x, y, 1):
...         print('2 arguments')
...     case range(x, y, z):
...         print('3 arguments')
...     case _:
...         print('none of the above')
...
Traceback (most recent call last):
File "", line 2, in 
case range(0, y, 1):
~~~~~^^^^^^^^^
TypeError: range() accepts 0 positional sub-patterns (3 given)
>>> match range(2, 5):
...     case range(start=0, stop=y, step=1):
...         print('1 argument')
...     case range(start=x, stop=y, step=1):
...         print('2 arguments')
...     case range(start=x, stop=y, step=z):
...         print('3 arguments')
...     case _:
...         print('none of the above')
...
2 arguments
< /code>
Interessanterweise können diese Argumente nicht einfach beliebige Namen verwenden. Durch die Verwendung verschiedener Verwenden scheitert die Musterübereinstimmung, ohne eine Ausnahme zu erhöhen. < /P>
>>> match range(2, 5):
...     case range(aaa=0, bbb=y, ccc=1):
...         print('1 argument')
...     case range(aaa=x, bbb=y, ccc=1):
...         print('2 arguments')
...     case range(aaa=x, bbb=y, ccc=z):
...         print('3 arguments')
...     case _:
...         print('none of the above')
...
none of the above

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post