详解python中*号的用法


Posted in Python onOctober 21, 2019

1、表示乘号

2、表示倍数,例如:

def T(msg,time=1):
  print((msg+' ')*time)

T('hi',3)

打印结果(打印3次):

hi hi hi

3、单个 * (1)、如:*parameter是用来接受任意多个参数并将其放在一个元组中。

>>> def demo(*p):
  print(p)
>>> demo(1,2,3)
(1, 2, 3)

(2)、函数在调用多个参数时,在列表、元组、集合、字典及其他可迭代对象作为实参,并在前面加 *

如 *(1,2,3)解释器将自动进行解包然后传递给多个单变量参数(参数个数要对应相等)。

>>> def d(a,b,c):
  print(a,b,c)

  
>>> d(1,2,3)

1 2 3

>>> a=[1,2,3]
>>> b=[1,2,3]
>>> c=[1,2,3]
>>> d(a,b,c)

[1, 2, 3] [1, 2, 3] [1, 2, 3]

>>> d(*a)
1
1 2 3

提示:序列解包要在关键参数和 **参数 之前进行处理

4、两个 ** 如: **parameter用于接收类似于关键参数一样赋值的形式的多个实参放入字典中(即把该函数的参数转换为字典)。

>>> def demo(**p):
  for i in p.items():
    print(i)
   
>>> demo(x=1,y=2)
(‘x', 1)
(‘y', 2)

知识点扩展:python中星号(*)和双星号(**)的用法

第一种情况:用在两表达式的中间,*表示乘法,**表示取幂,如:

>>> 2*5
10
>>> 2**7
128

第二种情况:用在变量的前面。

1,向函数传递参数,将变量中可迭代对象的元素拆解出来,作为独立的参数第传给函数,如:

>>> a=[1,2,3,4]
>>> print(*a,sep='\n')

>>> print(a[0],a[1],a[2],a[3],sep='\n')

>>>

 对于**,变量为字典,将其拆解出来,单独传给函数。如:

>>> dic={'a':1,'b':2,'c':3} 
>>> string='{a}-{b}-{c}'.format(**dic)  
>>> string  
'1-2-3'
>>>
 

2,在函数定义中使用,收集参数。将参数捕捉到一个元组中,如:

>>> def sum(*num):
   return num
 
>>> sum(1,3,5,7)   
(1, 3, 5, 7)
>>> 
 

该用法允许我们创建自己的函数时,可以接收任意数量的参数。

双星号可以将参数捕捉到字典中,如:

>>> def pack(**dic):
   return dic
 
>>> pack(a=1,b=2,c=3)  
{'a': 1, 'b': 2, 'c': 3}
>>>

总结

以上所述是小编给大家介绍的python中*号的用法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python的设计模式编程入门指南
Apr 02 Python
浅析Python中yield关键词的作用与用法
Nov 29 Python
git使用.gitignore设置不生效或不起作用问题的解决方法
Jun 01 Python
python实现海螺图片的方法示例
May 12 Python
Python+OpenCV+pyQt5录制双目摄像头视频的实例
Jun 28 Python
在Django下测试与调试REST API的方法详解
Aug 29 Python
python scipy卷积运算的实现方法
Sep 16 Python
Python打包模块wheel的使用方法与将python包发布到PyPI的方法详解
Feb 12 Python
Pycharm和Idea支持的vim插件的方法
Feb 21 Python
Django+boostrap 美化admin后台的操作
Mar 11 Python
简单了解Java Netty Reactor三种线程模型
Apr 26 Python
Python爬虫破解登陆哔哩哔哩的方法
Nov 17 Python
python中bytes和str类型的区别
Oct 21 #Python
python中@property和property函数常见使用方法示例
Oct 21 #Python
vim自动补全插件YouCompleteMe(YCM)安装过程解析
Oct 21 #Python
基于python解线性矩阵方程(numpy中的matrix类)
Oct 21 #Python
python打印直角三角形与等腰三角形实例代码
Oct 20 #Python
python配置文件写入过程详解
Oct 19 #Python
python实现广度优先搜索过程解析
Oct 19 #Python
You might like
mongo Table类文件 获取MongoCursor(游标)的实现方法分析
2013/07/01 PHP
PHP易混淆函数的区别及用法汇总
2014/11/22 PHP
javascript 通用简单的table选项卡实现
2010/05/07 Javascript
js 页面元素的几个用法总结
2013/11/18 Javascript
PHPMyAdmin导入时提示文件大小超出PHP限制的解决方法
2015/03/30 Javascript
jQuery实现的在线答题功能
2015/04/12 Javascript
javascript制作的简单注册模块表单验证
2015/04/13 Javascript
javascript实现类似java中getClass()得到对象类名的方法
2015/07/27 Javascript
JavaScript中removeChild 方法开发示例代码
2016/08/15 Javascript
JS框架之vue.js(深入三:组件1)
2016/09/29 Javascript
js中toString()和String()区别详解
2017/03/23 Javascript
jquery处理checkbox(复选框)是否被选中实例代码
2017/06/12 jQuery
vue按需引入element Transfer 穿梭框
2017/09/30 Javascript
ReactNative 之FlatList使用及踩坑封装总结
2017/11/29 Javascript
微信小程序日期时间选择器使用方法
2018/02/01 Javascript
详解NodeJs开发微信公众号
2018/05/25 NodeJs
浅谈Angular单元测试总结
2019/03/22 Javascript
React 全自动数据表格组件——BodeGrid的实现思路
2019/06/12 Javascript
Vue项目中使用flow做类型检测的方法
2020/03/18 Javascript
[03:26]回顾2015国际邀请赛中国区预选赛
2015/06/09 DOTA
一个超级简单的python web程序
2014/09/11 Python
详解Python学习之安装pandas
2019/04/16 Python
Python使用字典实现的简单记事本功能示例
2019/08/15 Python
python队列原理及实现方法示例
2019/11/27 Python
python3 求约数的实例
2019/12/05 Python
利用python控制Autocad:pyautocad方式
2020/06/01 Python
客户代表自我评价范例
2013/09/24 职场文书
会计专业大学生求职信范文
2014/01/28 职场文书
顶撞领导检讨书
2014/01/29 职场文书
《厄运打不垮的信念》教学反思
2014/04/13 职场文书
对外汉语专业大学生职业生涯规划书
2014/10/11 职场文书
不尊敬老师检讨书范文
2014/11/19 职场文书
幼儿园大班教师个人总结
2015/02/05 职场文书
运动会报道稿大全
2015/07/23 职场文书
教你用Python matplotlib库制作简单的动画
2021/06/11 Python
把77A收信机改造成收音机
2022/04/05 无线电