Python:元组(tuple)

一:作用

二:定义

三:类型转换

四:内置方法

 

#元组就是一种不可变的列表

一:元组类型的作用

按照索引位置存放一组数据只用于取,而不用于取

 

二:元组类型的定义

l = (1,2,3,4,5)
mm = ('nb','sb','hb','lb')
print(l)
print(mm)

以上代码执行结果为:

(1, 2, 3, 4, 5)
('nb', 'sb', 'hb', 'lb')

需要注意的是,如果元组中只有一个值,那么必须要在值的后边加一个逗号,否则它就不是一个元组而是包含的意思,只有加了逗号它才是一个元组:

lll = (1)
mm = (1,)
print(type(lll))
print(type(mm))

以上代码执行结果为:

<class 'int'>
<class 'tuple'>

 

元组的值不可变,如果强行改变元组的值会引发报错:

lll = (1,2,3)
lll[0] = 2

以上代码执行结果为:

Traceback (most recent call last):
  File "D:\PyCharm\lizi\basis\20200301\元组.py", line 11, in <module>
    lll[0] = 2
TypeError: 'tuple' object does not support item assignment

但如果元组中包含一个列表,那么可以修改列表的值:

lll = ([77,88,99],2,3)
lll[0][2] = 66
print(lll)

以上代码执行结果为:

([77, 88, 66], 2, 3)

 

三:元组类型的转换

lll = 'hello'
mmm = 3
sss = [1,2,3,4,5]
print(1,type(lll))
print(2,type(mmm))
print(3,type(sss))
print(4,type(tuple(lll)))
print(6,type(tuple(sss)))
print(5,type(tuple(mmm)))

以上代码执行结果为:

1 <class 'str'>
2 <class 'int'>
3 <class 'list'>
4 <class 'tuple'>
6 <class 'tuple'>
Traceback (most recent call last):
  File "D:\PyCharm\lizi\basis\20200301\元组.py", line 23, in <module>
    print(5,type(tuple(mmm)))
TypeError: 'int' object is not iterable

int类型数据只能转为str或float,转为其他类型会报错

 

四:元组类型的内置方法

元组类型的方法同列表类型一样,不过元组不支持修改,所以它只能切片取,而list其它的insert,del方法元组都没有

 

posted @ 2021-03-01 21:09  Sqlserverwooooo  阅读(155)  评论(0编辑  收藏  举报