title: list和tuple
date: 2017年3月28日 18:55:33
categories: python
---python
查看数据类型的方法:app
help(类型):输出该类型的全部方法,及其详细的解释。 dir(类型): 将类型的全部方法以列表的形式输出。
list是python内置的一种列表。list是一种有序的集合,能够随时添加删除修改其中的元素。code
例如用list存储班级同窗的姓名:排序
>>>classname=["xiaoming","Michael","jeck"] >>>classname ["xiaoming","Michael","jeck"]
变量classname就是一个list,能够用len()来得到list中有多少个元素。索引
>>>len(classname) 3
用索引来访问list中的每个位置的元素,索引是从0开始:element
>>>classname[0] "xiaoming" >>>classname[1] "Michael" >>>classname[3] 超出范围会报错: IndexError:list index out of range
除了用正数索引外,还能够用负数索引。rem
list[-1]:表示最后一个元素 list[-2]:表示倒数第二个元素
list是一个可变的序列表,因此能够往list中追加元素。it
list.append:追加到尾部.class
>>>a = [1,2,3] >>>a.append(4) >>>a [1,2,3,4]
list.insert(index,element):追加到指定位置。变量
>>>a=[1,2,3,4,6] >>>a.insert(4,5) #4是列表中的位置6的位置,在他前面插入5 >>>a [1,2,3,4,5,6]
list.pop():删除list末尾的元素。
>>>a=[1,2,3,4,5] >>>a.pop() >>>a [1,2,3,4]
list.pop(index):删除指定位置的元素:
>>>a=[1,2,3,4,5] >>>a.pop(0) >>>a [2,3,4,5]
除此以外还有list.rmove(element):删除指定的元素,若是有重复的则删除左边最近的。
>>>a = [1,2,3,4,5,1] >>>a.rmove(1) >>>a [2,3,4,5,1]
del list[index] :删除指定位置的元素。
若是想要替换list中的某个元素。能够直接赋值:
>>>a =[1,2,3,4,5] >>>a[4]=6 >>>a [1,2,3,4,6]
list.index(element) :返回index值。
list.count(element) : 返回重复元素的个数
list.clear():清空列表中元素。
del list :删除整个列表。
a=[1,2,3] b=[4,5,6] a.exted(b) :将b中的元素加到a中。b中元素不变。 a=[1,2,3,4,5,6] b=[4,5,6]
a=[1,2,3,4] a.reverse() :反转 a=[4,3,2,1] a=["a","c","b","d"] a.sort() :排序 a=["a","b","c","d"]
若是列表中既存在数字又存在字符,在python3中会报错,因此数字须要用引号转化成字符。
排列是按ASCII码排列,依然是数字在前。
浅拷贝:
a=[1,2,3,4] b=a a=[1,2,3,4] b=[1,2,3,4] a.pop() #删除最后一个元素 a=[1,2,3] b=[1,2,3] #b中的元素也会跟着改变
深拷贝:
copy()
a=[1,2,3,["a","b","c"]] b=a.copy() b=[1,2,3,["a","b","c"]] a.remove(1) a=[2,3,["a","b","c"]] b=[1,2,3,["a","b","c"] a[2][0]="A" a=[2,3,["A","b","c"]] b=[1,2,3,["A","b","c"]]
copy.deepcopy()
a=[1,2,3,4,["a","b"],5] b=copy.deepcopy(a) b=[1,2,3,4["a","b"],5] a.pop() #删除最后一个元素 a=[1,2,3,4,["a","b"]] b=[1,2,3,4,["a","b"]] a[4][1]="A" a=[1,2,3,4,["A","b"]] b=[1,2,3,4,["a","b"]]
另外一种有序的列表叫元组,tuple和list很是类似,可是tuple一但初始化就不能再更改,好比:
>>>a = (1,2,3,4,5)
如今a就是一个tuple,他不能改变,因此没有insert和append等方法。获取元素的方法和list同样。
若是要定义一个空的tuple能够写成:
>>>tuple=() >>>tuple ()
若是要定一个只有一个元素的tuple,能够:
>>>tuple=(1,) >>>tuple (1,)
若是不加, 而只写(1),这里就会把括号当成运算来看。运算结果为1.
>>>a=(1) >>>a 1
tuple的方法:count和index