tgoop.com/BookPython/3326
Create:
Last Update:
Last Update:
Python 3 позволяет сделать некоторые аргументы функции обязательными именованными аргументами, что означает, что их нужно передавать как (arg=value)
, а не просто (value)
.
Это может быть полезно, чтобы предотвратить вызовы функции вроде: grep(text, pattern, True, False, True)
, где True, False, True
на самом деле означают: игнорировать регистр, не инвертировать совпадение, шаблон — регулярное выражение Perl. Было бы неплохо заставить использовать единственный разумный вид вызова:
grep(text, pattern,
ignore_case=True,
perl_regexp=True)
Чтобы достичь этого результата, следует разместить обязательные именованные аргументы после аргумента переменной длины (также известного как
*args
):
def grep(
text, pattern, *args,
ignore_case=False,
invert_match=False,
perl_regexp=False,
):
pass
Если вам не нужен
*args
(как в примере), просто замените его на одиночную звездочку:
def grep(
text, pattern, *,
ignore_case=False,
invert_match=False,
perl_regexp=False,
):
pass
👉@BookPython
BY Библиотека Python разработчика | Книги по питону
Share with your friend now:
tgoop.com/BookPython/3326