python中星号怎么打(Python: 你所不知道的星号 * 用法)
以下内容为本人的学习笔记 ,如需要转载 ,请声明原文链接 微信公众号「englyf」https://mp.weixin.qq.com/s/FHyosiG_tegF5NRUEs7UdA
本文大概 1193 个字,阅读需花 6 分钟 内容不多 ,但也花了一些精力 如有余力 ,欢迎点赞收藏分享 ,谢谢! 铃铃铃…… 上课了 老师在黑板写着这么一个标题 《Python: 你所不知道的星号 * 用法》 同学A: 呃 ,星号不就是用来做乘法的嘛 ,这个还有必要专门列出来吗? 同学B: 老师这会又在卖关子了? 同学C忍不住嗦地一声站起来喊: 难道写代码还得强行找理由秀一波星星吗? 老师: 这位同学 ,你太优秀了 ,先坐下 。 平常对于星号的应用场景用得少是不需要了解太多用法的 。 不过 ,学编程的过程少不了要去阅读优秀的源代码库 , 也就时常会对星号 * 的贸然出现和用途感到困惑, 所以今天就让你们好好了解一下会有哪些用法 , 不要求全记住 ,略懂一二即可,略懂。 。 。这里尝试总结一波python里的星号* 用法 ,如有写得不到位 ,欢迎评论区交流!看下文...
数值乘法
最常见的用法,星号用在两个数之间实现两个数的乘法计算
e.g.
mul = 1 * 2 print(mul)Output:
2成员倍增器
如果星号前面的操作数是序列 ,比如列表 、元组 、字符串等 ,后操作数是n ,那么是对序列的成员倍增 ,列表的成员数量会变成原来的n倍 。
e.g.
list = [hello] * 2 print(list)Output:
[hello, hello]幂运算
两个星号 ** 表示对星号前面的操作数执行后面操作数的幂运算 ,简单点说就是求多少次方的计算 。
e.g.
print(10 ** 3)Output:
1000函数参数解压操作符
有时候在打印数据时 ,需要对原始数据进行输出 ,并且在数据之间插入一些分隔符 。一般想到的是用循环处理 ,但是看起来语句有些啰里啰唆的 。
e.g.
print(.join([sunday, monday, tuesday, wednesday])) print(.join(helloworld!))Output:
sunday monday tuesday wednesday h e l l o w o r l d !在这里要介绍的是更方便的方法 ,那就是用星号做解压处理 。
调用函数时,在输入参数前添加星号 * 可以对参数执行解压操作 ,比如对列表、元组 、字符串等序列类型的输入参数做解压之后 ,就变成了单个数据 。
e.g.
print(*list)Output:
l i s te.g.
print(*[hello, world, !])Output:
hello world !函数参数修饰符
添加星号 * 在函数的参数前时,表示该参数是不定数量的位置参数 。很多时候向函数输入的位置参数是不定数目的 ,这样子就可以借助星号修饰符来表述了。在函数内该参数存储的数据被构造成元组类型 ,也就是说传入的不定参数被包含在元组内 。
e.g.
def add(*args): return sum(args) print(add(1, 2, 3, 4, 5))Output:
15 添加两个星号 ** 在函数的参数前时,表示该参数是不定数量的关键字参数 。向函数输入的不定数目的参数除了可以是位置参数之外 ,也可以是关键字参数。这个时候就不能用单个星号做修饰符了 ,而是双星号 ** ,比如 **kwargs 。
在函数内该不定数目参数存储的数据属于字典类型 ,也就是说传入的不定参数被包含在字典内 。
e.g.
def food_type(**kwargs): for item in kwargs: print(f"{kwargs[item]} belongs to {item}") food_type(fruit = apple, meat = animal, vegetable = potato)Output:
apple belongs to fruit animal belongs to meat potato belongs to vegetable好了 ,简简单单介绍完毕 ,你看懂了吗?如果没有就留个言吧 ,我改总可以了吧?
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!