首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
V2EX  ›  问与答

关于 Python 里面函数定义的一些问题求教

  •  
  •   xiaoxiaotaozi · 171 天前 · 605 次点击
    这是一个创建于 171 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在函数定义里面 def function(kw)这里的这个kw 怎么理解呢。恳请个人小哥哥解释一下。

    5 回复  |  直到 2019-04-29 17:00:52 +08:00
        1
    hflyf123   171 天前   ♥ 1
        2
    inhzus   171 天前
    目测楼主因为 Markdown 语法导致 double star 变成了 bold.
    1 参数位置的 double star 符号把一系列关键字参数 pack 为 dict.
    举例说明:

    >>> def func(**kw):
    ... print(kw)
    ...
    >>> func(a=1, b='2')
    {'a': 1, 'b': '2'}

    2 double star 符号可以把 dict unpack 为一系列关键字参数

    >>> def foo(a, b):
    ... d = {'c': a, 'd': b}
    ... func(**d)
    ...
    >>> foo(1, 2)
    {'c': 1, 'd': 2}

    single star 符号同理. 这个东西有很多 magic 用法
        3
    izoabr   171 天前
    KeyWord
        4
    virualv   171 天前 via Android
    kwargs?
        5
    xiaoxiaotaozi   171 天前
    是的**kwargs 看见他们回复了,是关于字典的操作
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2017 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 20ms · UTC 16:07 · PVG 00:07 · LAX 09:07 · JFK 12:07
    ♥ Do have faith in what you're doing.