美文网首页
*和**的区别

*和**的区别

作者: Mlotjve | 来源:发表于2018-08-25 23:18 被阅读0次

**两个乘号就是乘方,比如2**4,结果就是2的4次方,结果是16

一个乘号*,如果操作数是两个数字,就是这两个数字相乘,如2*4,结果为8

*如果是字符串、列表、元组与一个整数N相乘,返回一个其所有元素重复N次的同类型对象,比如"str"*3将返回字符串"strstrstr"

如果是函数定义中参数前的*表示的是将调用时的多个参数放入元组中,**则表示将调用函数时的关键字参数放入一个字典中

如定义以下函数

def func(*args): print(args)

当用func(1,2,3)调用函数时,参数args就是元组(1,2,3)

定义以下函数

def func(**args): print(args)

当用func(a=1,b=2)调用函数时,参数args将会是字典{'a':1,'b':2}

如果是在函数调用中,*args表示将可迭代对象扩展为函数的参数列表

args=(1,2,3)

func=(*args)

等价于函数调用func(1,2,3)

函数调用的**表示将字典扩展为关键字参数

args={'a':1,'b':2}

func(**args)

等价于函数调用 func(a=1,b=2)

相关文章

  • &和&&,| 和 || 的区别

    &不管前面的条件是否正确,后面都执行 &&前面条件正确时,才执行后面,不正确时,就不执行,就效率而言,这个更好。 ...

  • &和&&, |和||的区别

    &和&&的含义一样, 表示逻辑与(and), 只有第一个表达式和第二个表达式都为 true 时, 整个运算结果才为...

  • &&和&,|和||的区别

    1 &&和&的区别 1 单&时,无论左边真假,右边都会进行计算 2 双&&时,只有左边为真时,右边才会进行计算,左...

  • null 和 undefined 的区别 ==和===的区别

    1.null 和 undefined 的区别 undefined 为变量未定义的值undefined表示"缺少值"...

  • is和 == 的区别

    为什么有时写代码 is 和 == 的结果相同,有的不相同呢? 分析: 官方文档中说 is 表示的是对象标示符(ob...

  • is和==的区别

    is 和 == 的区别 id()官网描述 def id(*args, **kwargs): # real sign...

  • *和**的区别

    **两个乘号就是乘方,比如2**4,结果就是2的4次方,结果是16 一个乘号*,如果操作数是两个数字,就是这两个数...

  • ${}和#{}的区别

    ${} 注入什么就是什么,且如果是简单类型的值需要用 value 来接收#{} 将传入的数据都当成一个字符串,会对...

  • is和==的区别

    is 是比较两个引用是否指向了同一个对象(引用比较)。 == 是比较两个对象是否相等。

  • .和..的区别

    .指的是当前目录; ..指的是上级目录; cd .. 进入上级目录 open ..打开上级目录; cd .进入本级...

网友评论

      本文标题:*和**的区别

      本文链接:https://www.haomeiwen.com/subject/djdniftx.html