python中上标星号怎么打_Python中参数前加星号的用法
刚开始折腾Python,今天发现了一个很奇怪的错误。
def accept(*s):
print(sum(s))
list = (0, 1, 2, 3, 7.5)
print(sum(list))
accept(list)
这段代码会报错:TypeError: unsupported operand type(s) for +=: 'int' and 'tuple',在函数中产生了int
与tuple相加的情况。但是函数外的sum(list)输出结果是正常的。
我们print(type(s)),得到的结果:。既然s也是元组,为什么会产生这样的结果呢?我们
分别打印一下s与list,输出是这样的:
(0, 1, 2, 3, 7.5)((0, 1, 2, 3, 7.5),)
从这结果可以看到,将list直接传入accept函数,效果并不是像我们期望的那样将s赋值为list再进行操作,
而是将整个list元组作为s的第一个元素,因此s是一个元组的元组。
那么有没有办法将list的元素分别传递进去呢?当然是有的,使用 ‘*’ 操作符。
我们将代码稍微更改成这样:
def accept(*s):
print(sum(s))
list = (0, 1, 2, 3, 7.5)
print(sum(list))
accept(*list)
输出结果:
13.5
13.5
这样就正常了。
‘*’ 操作符的作用是将元组“解包”,则a
python中上标星号怎么打_Python中参数前加星号的用法相关推荐
- Python基础_第3章_Python中的循环结构
Python基础_第3章_Python中的循环结构 文章目录 Python基础_第3章_Python中的循环结构 Python中的循环结构 一.回顾分支练习题 1.判断是否为一个合法三角形 2.求世界 ...
- Python基础_第5章_Python中的数据序列
Python基础_第5章_Python中的数据序列 文章目录 Python基础_第5章_Python中的数据序列 Python中的数据序列 一.字典--Python中的==查询==神器 1.为什么需要 ...
- python列表前加星号是什么_Python中的星号:用途及使用方法(1)
Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发. 原作者:Trey Hunner Python中 *和**很常见.无论是对于编程萌新还是许多从其他编程语言( ...
- python中参数前面加星号是什么意思_详解Python函数中参数带星号是什么意思
函数的参数使用除了常规的位置参数和关键字参数外,还支持可变个数的函数参数,这种支持可变个数的参数方法称为参数收集,对应的参数称为收集参数. 一.参数收集的定义 Python的函数支持可变不定数量的参数 ...
- python post与get的区别_python中get和post有什么区别
更多编程教程请到:菜鸟教程 https://www.piaodoo.com/ 友情链接: 高州阳光论坛https://www.hnthzk.com/ 人人影视http://www.sfkyty.com ...
- python深复制与浅复制_Python中的深拷贝和浅拷贝详解
要说清楚Python中的深浅拷贝,需要搞清楚下面一系列概念: 变量-引用-对象(可变对象,不可变对象)-切片-拷贝(浅拷贝,深拷贝) [变量-对象-引用] 在Python中一切都是对象,比如说:3, ...
- python运行mcmc为何老出错_python中mcmc方法的实现
MCMC方法在贝叶斯统计中运用很多,MIT发布的EMCEE是实现的比较好的.介绍页面在下面.源代码中examples里的代码可以帮助理解各种功能,特别是line.py 列出了最小二乘法,最大似然法和M ...
- python实例属性与类属性_Python中的类属性和实例属性引发的一个坑-续
上篇文章Python 中的类属性和实例属性,我们探讨了类属性和实例属性引发的一个小坑.总结了类属性和实例属性的区别如下:类属性可以被类和实例调用,实例属性只能被实例调用 类属性不会随着实例的调用而改变 ...
- python中str和int区别_python中eval与int的区别浅析
python中eval和int的区别是什么?下面给大家介绍一下: 1.eval()函数 eval(<字符串>)能够以Python表达式的方式解析并执行字符串,并将返回结果输出.eval() ...
- python计算数组元素的和_python中数组的运算
Python中进行数组的运算需要调用NumPy包. 其官网是:http://www.numpy.org/www.numpy.org NumPy是Python语言的一个扩充程序库.它支持高级大量的维度 ...
最新文章
- SDN/NFV步入规模部署期 运营商拓智能化成大势所趋
- oracle学习之三--多表查询
- jBPM4.4 window下启动tomcat
- [react] React16废弃了哪些生命周期?为什么?
- java学习(91):System类
- 计算机组成原理简单计算机设计,计算机组成原理课设.doc
- 栾川一高2021高考成绩查询,2017栾川一高录取分数线(附2017高考成绩喜报)
- java链表实现二叉树_Java 实现链表、二叉树的一些问题
- android stuido 快捷键
- 干货 | 科研大牛们怎么读文献?
- leetcode [26] 删除排序数组中的重复项 / Remove Duplicates from Sorted Array
- 智能优化算法应用:基于麻雀搜索算法的TSP问题求解 - 附代码
- Linux--shell编程原理--03
- 椭球体上某区域面积的求算,及该区域兰伯特投影与墨卡托投影到二维平面后面积对比...
- 阿波罗apollo使用方法+领英使用
- 转载:位图和矢量图的区别
- Windows bat 编程基本语法
- 失眠患者的功能连通性改变
- XML报表打印出错,乱码问题
- 【开发工具】JetBrains