详解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 相关文章推荐
定制FileField中的上传文件名称实例
Aug 23 Python
Python实现桶排序与快速排序算法结合应用示例
Nov 22 Python
python 删除列表里所有空格项的方法总结
Apr 18 Python
Python函数参数匹配模型通用规则keyword-only参数详解
Jun 10 Python
Python3网络爬虫开发实战之极验滑动验证码的识别
Aug 02 Python
python之PyQt按钮右键菜单功能的实现代码
Aug 17 Python
Python Tkinter模块 GUI 可视化实例
Nov 20 Python
Python函数的默认参数设计示例详解
Dec 01 Python
关于初始种子自动选取的区域生长实例(python+opencv)
Jan 16 Python
Django项目创建及管理实现流程详解
Oct 13 Python
Python OpenCV中的numpy与图像类型转换操作
Dec 11 Python
Python 解决空列表.append() 输出为None的问题
May 23 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
php用户注册信息验证正则表达式
2015/11/12 PHP
PHP实现压缩图片尺寸并转为jpg格式的方法示例
2018/05/10 PHP
在多个页面使用同一个HTML片段《续》
2011/03/04 Javascript
用Javascript评估用户输入密码的强度实现代码
2011/11/30 Javascript
JS简单实现动画弹出层效果
2015/05/05 Javascript
JavaScript无阻塞加载和defer、async详解
2017/02/26 Javascript
详解axios 全攻略之基本介绍与使用(GET 与 POST)
2017/09/15 Javascript
JavaScript 中 JSON.parse 函数 和 JSON.stringify 函数
2018/12/05 Javascript
Vue2.X和Vue3.0数据响应原理变化的区别
2019/11/07 Javascript
[37:45]完美世界DOTA2联赛PWL S3 LBZS vs Phoenix 第二场 12.09
2020/12/11 DOTA
python返回昨天日期的方法
2015/05/13 Python
Python中pip更新和三方插件安装说明
2018/07/08 Python
PythonWeb项目Django部署在Ubuntu18.04腾讯云主机上
2019/04/01 Python
解决python3 安装不了PIL的问题
2019/08/16 Python
python numpy--数组的组合和分割实例
2020/02/24 Python
Python图像处理库PIL的ImageFilter模块使用介绍
2020/02/26 Python
pycharm 实现复制一行的快捷键
2021/01/15 Python
css3实现超炫风车特效
2014/11/12 HTML / CSS
CSS3 text-shadow实现文字阴影效果
2016/02/24 HTML / CSS
canvas实现滑动验证的实现示例
2020/08/11 HTML / CSS
AutoShack.com加拿大:北美主要的汽车零部件零售商
2019/07/24 全球购物
Lentiamo丹麦:购买便宜的隐形眼镜
2021/01/13 全球购物
银行实习人员自我鉴定
2013/09/22 职场文书
财务会计专业应届毕业生求职信
2013/10/18 职场文书
外语专业毕业生个人的自荐信
2013/11/19 职场文书
应用艺术毕业生的自我评价
2013/12/04 职场文书
晚宴邀请函范文
2014/01/15 职场文书
五一劳动节活动记录
2014/03/23 职场文书
事业单位人员的自我评价范文
2014/09/21 职场文书
初中教师德育工作总结2015
2015/05/12 职场文书
钱学森电影观后感
2015/06/04 职场文书
幼儿园开学温馨提示
2015/07/15 职场文书
Python中zipfile压缩包模块的使用
2021/05/14 Python
JS 4个超级实用的小技巧 提升开发效率
2021/10/05 Javascript
CKAD认证中部署k8s并配置Calico插件
2022/03/31 Servers
Windows Server 2019 域控制器安装图文教程
2022/04/28 Servers