*作为python中的参数是什么意思?

时间:2018-07-16 13:17:47

标签: python parameters arguments

我正在浏览this file of code,然后发现了该类:

class StreamPlaylistEntry(BasePlaylistEntry):
def __init__(self, playlist, url, title, *, destination=None, **meta):
    super().__init__()

我知道参数前面的星号表示它是任意数量的参数的列表,但是星号本身是什么意思?

1 个答案:

答案 0 :(得分:2)

这意味着之后的所有参数都是仅关键字的。如official glossary under the word parameter中所述:

  
      
  • 仅关键字:指定只能由以下参数提供的参数   关键词。仅关键字参数可以通过包含单个   var-positional参数或*的裸露位置   它们前面的函数定义,例如 kw_only1 kw_only2   以下:

    def func(arg, *, kw_only1, kw_only2): ...
    
  •