您的位置:首页 > 编程语言 > Python开发

python的list和tuple

2016-05-20 14:14 477 查看
这些都是从我的技术分享网站转载的

tuple和list都是一种有序的集合,不同的是list可以随时添加和删除其中的元素,而tuple一经初始化就不能修改

一、list

list叫列表,下面我们来介绍一下list的创建、删除和修改和增加

list的创建和查找:

>>> zgc_list=['zhangguochang',1,'you','hello',2.1]
>>> len(zgc_list)
5
>>> zgc_list[0]
'zhangguochang'
>>> zgc_list[-1]
2.1
>>> zgc_list[-2]
'hello'
>>> zgc_list[2]
'you'


list用方括号[]表示,里面可以是各种数据类型及其组合,len(zgc_list)是计算list的元素个数,访问list的方法就是用索引访问,我们的第一个元素在list里面是第0个,如zgc_list[0]就是zgc_list这个list的第一个元素,list的倒数第一个元素用zgc_list[-1]表示,倒数第二个元素用zgc_list[-1],注意不能超过list的范围进行访问,否则会报错,zgc_list[-6]和zgc_list[5]都会报错,因为已经超出list的范围了

list的创建除了用上面的直接手工赋值外,还可以用for循环的方式创建,如下:
>>> zgc_list=['I love you '+str(i)+' years' for i in range(100,103)]
>>> zgc_list
['I love you 100 years', 'I love you 101 years', 'I love you 102 years']


上面的i是一个整型变量,从100取到102,需要把它用str()函数强制转化为字符串型变量后,才能将其与I love you和years这两个字符串连接起来

list的删除:
>>> zgc_list=[11,22,33,44,55,66,77,88,99,100,200,300,400,500]
>>> del zgc_list[2]
>>> zgc_list
[11, 22, 44, 55, 66, 77, 88, 99, 100, 200, 300, 400, 500]
>>> zgc_list.pop()
500
>>> zgc_list
[11, 22, 44, 55, 66, 77, 88, 99, 100, 200, 300, 400]
>>> zgc_list.remove(66)
>>> zgc_list
[11, 22, 44, 55, 77, 88, 99, 100, 200, 300, 400]
>>> zgc_list[:4]
[11, 22, 44, 55]
>>> zgc_list[:-1]
[11, 22, 44, 55, 77, 88, 99, 100, 200, 300]


上面使用了四种删除list元素的方法

1.使用del删除对应下标的元素,如del zgc_list[2]

2.使用.pop()删除最后一个元素,如zgc_list.pop()

3.删除指定值的元素,如zgc_list.remove(66)

4.使用切片来删除,如zgc_list[:4],它表示截取zgc_list的第0个至第三个元素

list的修改:
>>> zgc_list=[1,2,3]
>>> zgc_list[2]=100
>>> zgc_list
[1, 2, 100]


修改list可以直接将某个位置的元素重新赋值就行,比如zgc_list[2]=100,就将zgc_list索引为2的元素由3替换为100了

list的增加:
>>> zgc_list=[1,2,3]
>>> zgc_list.append('zhangguochang')
>>> zgc_list
[1, 2, 3, 'zhangguochang']


.append()用户向list添加新的元素,新元素放到list的末尾

二、tuple

 tuple叫元组,tuple用小括号来表示(),里面防止各种类型的数据
>>> zgc_tuple=('zhangguochang',12,True)
>>> zgc_tuple[1]
12
>>> zgc_tuple[-1]
True
>>> zgc_tuple.append(3)

Traceback (most recent call last):
File "", line 1, inzgc_tuple.append(3)
AttributeError: 'tuple' object has no attribute 'append'
>>> zgc_tuple[2]=2

Traceback (most recent call last):
File "", line 1, inzgc_tuple[2]=2
TypeError: 'tuple' object does not support item assignment


tuple可以与list一样用索引访问,但是却不能增加或者修改,这样都会报错
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python