首页 / 知识
python 可变参数
2023-11-12 13:30:00
在Python函数中,还可以定义可变参数。顾名思义,可变参数就是传入的参数个数是可变的,可以是1个、2个到任意个,还可以是0个。
我们以数学题为例子,给定一组数字a,b,c……,请计算a2+b2+c2+……。
1defcalc(*numbers):
2sum=0
3forninnumbers:
4sum=sum+n*n
5returnsum
6
7#测试
8#调用该函数时,可以传入任意个参数,包括0个参数
9>>>calc(1,2)
105
11>>>calc()
120
13
14#Python允许你在list或tuple前面加一个*号,把list或tuple的元素变成可变参数传进去;*nums表示把nums这个list的所有元素作为可变参数传进去。这种写法相当有用,而且很常见
15>>>nums=[1,2,3]
16>>>calc(*nums)
1714
成员运算符:notin、in(判断某个单词里是不是有某个字母)
成员运算符用来判断一个元素是否是另一个元素的成员。比如说我们可以判断“hello”中是否有“h”,得到的结果也是True或者False。
1>>>"h"in"hello"#这里的意思是“h”在“Hello”中,判断后结果为True
2True
3>>>"h"notin"hello"#这里的意思是“h”不在“Hello”中,判断后结果为False
4False
身份运算符:is、isnot(讲数据类型时讲解,一般用来判断变量的数据类型)
用来判断身份。
1>>>a=123456
2>>>b=a
3>>>bisa#判断a和b是不是同一个123456
4True
5>>>c=123456
6>>>cisa#判断c和a是不是同一个123456
7False
8>>>cisnota#判断c和a是不是不是同一个123456
9True
这里我们首先将123456赋值给a,后有将a赋值给b,这样其实是a和b的值都是123456,但是后面c的值也是123456,为什么第一次aisb的结果为True,c和a的结果为False呢?
原因是这样的:我们知道程序是运行在内存里的,第一次我们将123456赋值给a的时候,其实是在内存里开辟了一块空间,将123456放在这块空间里,为了找到这里的123456,会有一个指向这块空间的地址,这个地址叫做内存地址,是123456存储在内存中的地址。a其实指向的就是存储123456的内存空间的地址。执行了b=a,就是让b指向的地址和a一样。之后我们执行了c=123456,这里就会再开辟一块内存空间,并将指向该空间的内存地址赋值给c,这样的话,a和b指向的是同一个123456,c指向的是另外一个123456。
以上内容为大家介绍了python可变参数,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注我们
最新内容
相关内容
用Python爬取百度搜索结果
用Python爬取百度搜索结果,百度,项目,分析,软件,网址,广告,时间,培训,粮食,标题,一、前言众所周知,百度上直接搜索关键字会出来一大堆东西,时常用Python开发一个简单的猜数字游戏
用Python开发一个简单的猜数字游戏,数字,代码,培训,官网,设备,程序,玩家,注释,内容,游戏,本文介绍如何使用Python制作一个简单的猜数字游戏。优化 Python 程序的内存占用
优化 Python 程序的内存占用,代码,数据,情况,培训,对象,字典,内存,垃圾,程序,机制,Python的垃圾回收机制通过引用计数来决定一个对象要不要被Python 中如何实现参数化测试?
Python 中如何实现参数化测试?,密码,数据,测试,业务,情况,预期,培训,系统,参数,方法,之前,我曾转过一个单元测试框架系列的文章,里面介绍了unitpython函数调用和参数传递
python函数调用和参数传递,位置,培训,函数,变量,参数,指针,例子,内存,整数,操作,定义过函数后,就可以在后面程序中使用这一函数printsquare_suPython在最短的序列参数终止时停止
Python在最短的序列参数终止时停止迭代,培训,序列,函数,版本,元素,参数,形式,以上,功能,指南,chain(p,q,...)迭代至序列p的最后一个元素后,从qpython 命名关键字参数
python 命名关键字参数,位置,参数,名字,培训,关键字,函数,后面,定义,方式,上面,对于关键字参数,函数的调用者可以传入任意不受限制的关键字参python 列表元素的删除
python 列表元素的删除,代码,数据,位置,连续,异常,首次,培训,元素,列表,空隙,使用del命令删除列表中的指定位置上的元素。>>>a_list=[3,5,7,9Python 命名空间的访问
Python 命名空间的访问,名字,培训,模块,空间,函数,示例,变量,局部,全局,语句,1、局部命名空间可以locals()BIF来访问。locals返回一个名字/值python 列表元素访问与计数
python 列表元素访问与计数,异常,首次,培训,列表,元素,下标,对象,方法,次数,以上,使用下标直接访问列表元素,如果指定下标不存在,则抛出异常。>python如何读取列表中元素的位置?
python如何读取列表中元素的位置?,位置,数据,异常,培训,字符串,元素,索引,方法,示例,结果,python读取列表中元素位置的方法:1、使用index()方python函数如何传递参数?
python函数如何传递参数?,代码,函数,培训,地址,参数,元素,变量,方式,结果,字典,python中,函数参数由实参传递给形参的过程,是由参数传递机制来