listtuple

Posted 凛冬将至

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了listtuple相关的知识,希望对你有一定的参考价值。

list

classmates = [‘Michael‘,‘Bob‘,‘Tracy‘]

# 记得最后一个元素的索引是-1
print(classmates[-1],classmates[2])

# 添加
classmates.append(‘Adam‘)
classmates.insert(1,‘Jack‘)


# 删除 pop()、clear()、remove()、del 前三个是方法,是需要list调用的,最后是语句,直接放左边
print(classmates.pop()) # pop返回了删除的那个值,默认最后一个,也能根据索引删除
classmates.pop(1)
classmates.remove(‘Michael‘) # remove是根据数据删除,而不是索引,无返回值

# clear()是清空列表数据,而del是清空整个列表,也可以删除某个索引的数据
classmates.clear()
del classmates[1]
del classmates

# list里面的元素的数据类型也可以不同,比如:
L = [‘Apple‘,123,True]

# list元素也可以是另一个list,比如:
s = [‘python‘, ‘java‘, [‘asp‘, ‘php‘], ‘scheme‘]


tuple

另一种有序列表叫元组:tuple。
tuple和list非常类似,但是tuple一旦初始化就不能修改,比如同样是列出同学的名字:

classmates = (‘Michael‘,‘Bob‘,‘Tracy‘)

# 只有1个元素的tuple定义时必须加一个逗号,,来消除歧义:
t = (1,)

‘‘‘
最后来看一个“可变的”tuple:
表面上看,tuple的元素确实变了,但其实变的不是tuple的元素,而是list的元素。
tuple一开始指向的list并没有改成别的list,所以,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。
即指向‘a‘,就不能改成指向‘b‘,指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的!
理解了“指向不变”后,要创建一个内容也不变的tuple怎么做?那就必须保证tuple的每一个元素本身也不能变。
‘‘‘

t = (‘a‘,‘b‘,[‘A‘,‘B‘])
t[2][0] = ‘X‘
t[2][1] = ‘Y‘
print(t)
 
 

以上是关于listtuple的主要内容,如果未能解决你的问题,请参考以下文章