Python函数星号参数解析:元组与字典的奥秘
python函数中参数带有一个星号
*表示带有一个星号(*)参数的函数传递的参数存储为元组的情况,而带有两个星号(*)参数的函数传递的参数存储为字典(dict)的情况,因为参数数量传入的是变量,与常规参数一起使用时,星形参数必须放在最后。能具体说一下吗?
变量是包含存储值的内存位置。
换句话说,当创建变量时,可以在内存中保留空间。
解释器根据变量的数据类型分配内存并确定保留内存中可以存储的内容。
因此,通过为变量分配不同的数据类型,这些变量中可以存储的数据类型是整数、小数或字符等。
给变量赋值
在Python中,变量不需要显式声明类型来预留内存空间。
Python在为变量赋值时自动发出声明。
等号(=)用于为变量赋值。
=运算符左侧的操作数是变量的名称,而=运算符右侧的操作数是将存储在变量中的值。
例如-
#!/usr/bin/python3counter=100#一个整数Miles=999.99#一个浮点数name="Maxsu"#一个字符串site_url="http://www.yiibai.com"#Astringprint(counter)print(miles)print(name)print(site_url)Python
这里是100999.99和“Maxsu”分别是分配给计数器、英里和名称变量的值。
运行上面的代码将产生以下结果:
100999.99Maxsuhttp://www.yiibai.comShell
多重赋值
Python允许将单个值赋给同时存在多个变量。
例如-
a=b=c=1Python
这里创建了一个值为1的整数对象,并将三个变量分配到同一内存地点。
您还可以将多个对象分配给多个变量。
例如-
a,b,c=10,20,"maxsu"Python
这里将两个值为10和20的整数对象分别赋值给变量a和b,并将值为“maxsu”的字符串对象分配给变量c。
标准数据类型
存储在内存中的数据可以有多种类型。
例如,一个人的年龄可以存储为数值,而他们的地址可以存储为字母数字字符串。
Python提供了多种标准数据类型,定义了每种标准数据类型可能的操作和存储方法。
Python有五种标准数据类型:
1数字
2字符串
3。
>4.元组
5.字典
1.Python数字
数字数据类型存储数值。
当为数字对象分配值时,就会创建数字对象。
例如-
可以使用del语句删除对数字对象的引用。
del语句的语法为-
可以使用del语句删除一个或多个对象。
例如-
delvardelvar_a,var_bPythonPython支持三种不同的数值类型-
int(有符号整型)
float(浮点型)实值)
复数(复数)
Python3中的所有整数都表示为长整数。
因此,长整数没有单独的数字类型。
示例
以下是一些数值示例-
int
float
复杂
100.03.14d
10015.2045.d
-786-21.99.322e-36d
08032.3+e18.876j
-0490-90-.6545+0J
-0x260-32.54e1003e+2。
6J
0x6970.2-E124.53e-7j
复数由x+yj表示的一对有序实浮点数组成,其中x和y是实数j是一个单位想象的数字。
2.Python字符串
Python中的字符串被标识为用引号表示的连续字符集。
Python允许使用双引号或者双引号。
您可以使用片段运算符([]和[:])来获取字符串的子集(子字符串),其索引从字符串开头的索引0开始,对于字符串的最后一个字符从-1开始。
加号(+)是字符串连接运算符,星号(*)是重复运算符。
例如-
将上面的代码保存到variable_types_str1.py文件中,执行会产生以下结果-
F:\worksp\python>pythonvariable_types_str1.pystr=yiibai.comstr[0]=ystr[2:5]=ibastr[2:]=ibai.comstr[-1]=mstr*2=yiibai.comyiibai.comstr+"TEST"=yiibai.comTESTF:\worksp\python>Shell2.Python列表
List是Python复合数据类型中最通用的。
列表包含用逗号分隔并括在方括号([])中的项目。
在某种程度上,列表类似于C中的数组。
它们之间的区别之一是Python列表中的所有元素可以是不同的数据类型,而C中的数组不能是相同的类型。
使用切片运算符([]和[])访问存储在列表中的值,索引从列表开头的0开始,从列表中最后一个元素的索引从-1开始。
列表。
加号(+)是列表串联运算符,星号(*)是重复运算符。
例如-
3.TuplePython
元组是另一种与列表非常相似的序列数据。
元组是用逗号分隔的多个值。
然而,与列表不同,元组括在括号(())中。
列表和元组之间的主要区别是:列表用方括号([])括起来,列表的元素和大小可以更改,而元组则用方括号(())括起来,不能更改被更新。
元组可以被认为是只读列表。
例如-
将以上代码保存到文件中variable_types_tuple.py执行将产生以下结果-
F:\worksp\python>pythonvariable_types_tuple.pytuple=('maxsu',786,2.23,'yiibai',70.2)tuple[0]=maxsutuple[1:3]=(786,2.23)元组[-3:-1]=(2.23,'yiibai')tuple[2:]=(2.23,'yiibai',70.2)tinytuple*2=(999.0,'maxsu',999.0,'maxsu')tuple+tinytuple=('maxsu',786,2.23,'yiibai',70.2,999.0,'maxsu')F:\worksp\python>Shell以下代码对元组无效,因为尝试更新元组,但会更新不允许使用元组。
类似的情况可能是list-
Python字典
Python字典是哈希表的一种。
它们的功能类似于Perl中的关联数组或散列,由键值对组成。
字典键几乎可以是任何Python数据类型,但为了方便起见通常使用数字或字符串。
另一方面,该值可以是任意Python对象。
字典括在大括号({})中,并且可以使用方括号([])分配和访问值。
例如-
将上述代码保存在variable_types_dict.py文件中,执行将产生以下结果-
F:\worksp\python>pythonvariable_types_dict.pydict['one']=Thisisonedict[2]=Thisismytinydict={'name':'maxsu','code':1024,'dept':'ITDev'}tinydict.keys()=dict_keys(['name','code','dept'])tinydict.values()=dict_values(['maxsu',1024,'ITDev'])Shell字典元素没有顺序概念。
但说这些元素“乱序”是不正确的。
转换数据类型
有时,可能需要在内置类型之间执行转换。
要在类型之间进行转换,只需将类型名称用作函数即可。
有几个内置函数可以执行从一种数据类型到另一种数据类型的转换。
这些函数返回一个表示转换值的新对象。
它们如下-
编号
功能
描述
1int(x[,base])将x转换为int。
如果x是字符串,则base指定基数。
2float(x)将x转换为浮点数。
3complex(real[,imag])创建一个复数。
4str(x)将对象x转换为字符串表示形式。
5repr(x)将对象x转换为表达式字符串。
6eval(str)计算字符串并返回对象。
7tuple(s)将s转换为元组。
8list(s)将s转换为列表。
9套转换为集合。
10dict(d)创建字典,d必须是元组序列(key,value)
11freezeset(s)将s转换为冻结集合
12chr(x)将整数x转换为字符
13unichr(x)将整数x转换为Unicode字符。
14ord(x)将单个字符x转换为其整数值。
15hex(x)将整数x转换为十六进制字符串。
16oct(x)将整数x转换为八进制字符串。