Python中的有序列表List&Tuple

1. 列表list
list是一种有序的集合,能随时删除和添加其中的元素。

['a','b','c']

由于Python是动态语言,所以list中的元素可以是不同数据类型的元素。

l=['a',10,1<2,2.0]

一个元素也没有的list是一个空list。

a=[]

1.1 按照索引访问List
通过索引从列表中获取指定的元素,需要注意的是索引从0开始。倒序访问,从-1开始。

l=['Adam','Lisa','Bart']
print l[0] #获取第一个
print l[1]
print l[2]
print l[-1] #获取最后一名

1.2 List列表中添加元素
利用append()命令

l=['Adam','Lisa','Bart']
l.append('aki')
print l

append()总是把新的元素添加到尾部。

如果要把新的元素插入到第一的位置,利用insert()命令。
insert(索引号,新元素)

l=['Adam','Lisa','Bart']
l.insert(0,'zoe')
print l

1.3 List列表中删除元素

如果是从列表尾部删除一个元素,可以利用pop()命令。

 #删除最后一个元素
l=['Adam','Lisa','Bart']
l.pop() 
#连续删除第2和第3个
l=['Adam','Lisa','Bart']
l.pop(2)
l.pop(1)

1.4 List列表中替换元素

#把Bart替换成Paul
l=['Adam','Lisa','Bart']
l[2]='Paul'

2. 元组tuple
tuple是另一种有序列表,中文翻译是元组。不过,tuple()一旦建立就不能添加赋值。

l=('Adam','Lisa','Bart')

2.1tuple()中获取元素
从tuple()中获取元素和list中一样。

l=('Adam','Lisa','Bart')
l[0] #获取第一个元素 
l[-1] #获取最后一个元素

2.2 创建一个单元素tuple

包含 0 个元素的 tuple,也就是空tuple,直接用 ()表示

t=()

创建包含1个元素的 tuple 呢,

t=(1)   #表示整数1而不是tuple  

由于()也表示运算的优先级,所以为了区分,Python规定单元素tuple要多加一个逗号(,)。

t=(1,) #(1,)

多元素 tuple 加不加这个额外的“,”效果是一样的。

t=(1,2,3,) #(1,2,3)

2.3 tuple的指向不变性
前面提到tuple一旦定义就不能修改,现在来谈一个”可变”的tuple。如例:

t=('a','b',['A','B'])

t是一个包含3个元素的tuple:字符串a、b和列表[‘A’,’B’]。

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

输出结果为(’a’,’b’,[‘X’,’Y’])。表面上看tuple内的元素却是变了,但是其实变的是list中的元素。tuple一开始指向的list并没有变成其他的list。tuple中的每一个元素的指向永远不变,即指向a就不能指向b,指向list就不能指向其他对象。但是对象list本身内部是可以变的。

详细参考

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值