Змея / Говнокод #26880 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
>>> def f(positional_only, /, regular, *varargs, kw_only, **kw_varargs):
    print(positional_only, regular, varargs, kw_only, kw_varargs)

f(1, 2, 3, 4, 5, kw_only='kw_only', kw_var1='var1', kw_var2='var2')
# 1 2 (3, 4, 5) kw_only {'kw_var1': 'var1', 'kw_var2': 'var2'}

Блядь, как всё сложно…

https://www.python.org/dev/peps/pep-0570/

Запостил: gost gost, (Updated )

Комментарии (17) RSS

      • Именно поэтому я за «C++».

        Там правильная передача аргумента — это целое искусство, не то что в этой вашей скриптухе.
        Ответить
        • Нагородили сложностей на ровном месте, то ли едло было в классическом буйсике.
          Ответить
  • А зачем он три аргумента в кортеж запихнул?

    p.s. в пеп не вчитывался
    Ответить
    • Это так варарги устроены в питухе. 1 пошла в positional_only (сделать f(positional_only=1) нельзя), 2 — в regular (f(regular=2) можно), оставшиеся positional аргументы пошли в кортеж varargs. Можно было без вараргов:
      def f(positional_only, /, regular, *, kw_only):
          print(positional_only, regular, kw_only)

      Так даже более наркоманисто выглядит.

      UPD: Традиционно эти аргументы называются «*args» и «**kwargs», но это не более чем конвенция.
      Ответить
  • > kw

    Это key-walue или как расшифровывается?
    Ответить
  • Будем честны, Гвидо не осилил «PHP».
    Gost тоже.
    Ответить
    • В «PHP» нет никаких «именованных параметров», именно поэтому я против «PHP».
      Ответить
    • Большинство людей негативно относится к копрофагии. При этом никто из них даже не пробовал есть говно.
      Они предвзяты.

      Так же и с ПХП
      Ответить

Добавить комментарий

Где здесь C++, guest?!

    А не использовать ли нам bbcode?


    8