列表类型

序列是python中最基本的数据结构.序列中的每个元素都分配一个数字(它的位置或索引),第一个索引是0,第二个索引是1,一次类推.

python有6个序列的内置类型,最常见的是列表和元祖.

列表是最常用的python数据类型,它可以作为一个方括号内的逗号分隔值出现.

列表的数据项不需要具有相同的类型.

创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可.

list1=['Google','kpan',18,2018]
list2=[1,2,3,4,5]
l3=['a','b','c','d']

 

总结:存多个值  /  有序  /可变(值变,id不变,可变==不可hash)

 


 

常用操作+内置方法

1.按索引存取值(正向存取+反向存取):即可存也可以取

l=['a','b','c','d','e']
print(l[0])         #取值索引为0的数
print(l[-1])        #反向取值
print(id(l))
l[0]='A'            #将列表中索引为0的存为'A'
print(l)
print(id(l))

#输出结果
a
e
2771924504072
['A', 'b', 'c', 'd', 'e']
2771924504072

 

2.切片(顾头不顾尾)

l=[1,2,3,4,5,6]

#正向步长
l[0:3:1] #[1, 2, 3]
#反向步长
l[2::-1] #[3, 2, 1]
#列表翻转
l[::-1] #[6, 5, 4, 3, 2, 1]

 

l=['a','b','c','d','e']
print(l[1:4])

#输出结果
['b', 'c', 'd']

 

3.长度(len)

l=['a','b','c','d','e']
print(len(l))

#输出结果
5

 

4.成员运算 in 和 not in

l=['a','b','c','d','e']
print('a' in l)
print('ssssss' not in l)

#输出结果
True
True

 

5.追加 append() 和插入 insert()    extend

append()方法用于在列表末尾添加新的对象

list.append(obj)
#obj--添加到列表末尾的对象

 

返回值: 该方法无返回值,但是会修改原来的列表

l=['a','b','c','d','e']
l.append(3333333)
l.append(44444)
print(l)

#输出结果
['a', 'b', 'c', 'd', 'e', 3333333, 44444]

 

 

insert()函数用于将指定对象插入列表的指定位置

list.insert(index,obj)

#index--对象obj需要插入的索引位置
#obj--要插入列表中的对象

 

返回值:该方法没有返回值,但会在列表指定位置插入对象.

l=['a','b','c','d','e']
l.insert(0,11111111111)
print(l)

#输出结果
[11111111111, 'a', 'b', 'c', 'd', 'e']

 

extend([1,2,3])  将列表里面的循环取值出来再加入进去

 

6.删除( del  pop   remove)

pop()函数用于移除列表中的一个元素(默认最后一个元素)

list.pop([index=-1])
#index-- 可选参数,要移除列表元素的索引值,不能超过列表总长度,默认为index=-1,删除最后一个列表值

 

remove()函数用于移除列表中某个值的第一个匹配项.

list.remove(obj)
#obj -- 列表中要移除的对象

 

返回值:  del()没有返回值

      pop()该方法返回从列表中移除的元素对象.

      remove()没有返回值,但会移除两种中的某个值的第一个匹配项

l=['a','b','c','d','e']
del l[0]
res=l.remove('b')
print(l)
print(res)

res=l.pop(0)
print(l)
print(res)

#输出结果
['c', 'd', 'e']
None
['d', 'e']
c

 

l=[]
#队列:先进先出
#入队
l.append('first')
l.append('second')
l.append('third')
print(l)
#出队
print(l.pop(0))
print(l.pop(0))
print(l.pop(0))

#堆栈:后进先出
#入栈
l.append('first')
l.append('second')
l.append('third')
print(l)
#出栈
print(l.pop())
print(l.pop())
print(l.pop())

#输出结果
['first', 'second', 'third']
first
second
third
['first', 'second', 'third']
third
second
first
队列(先进先出) 堆栈(后进先出)

 

 

 

7.循环

l=['a','b','c','d','e']
for item in l:
    print(item)

#输出结果
a
b
c
d
e
posted @ 2018-11-22 16:18  kongpan  阅读(1344)  评论(0编辑  收藏  举报