Python | 列表(list)

       列表是python内置的可变序列,是包含若干元素的有序连续内存区间,其元素数据类型可以各不相同。当列表增加或删除元素时,列表对象将自动进行内存的扩展或收缩,从而保证元素间没有间隙。python列表内存的自动管理可以大幅减少程序员负担,但是也可能造成列表内大量元素的移动,效率低。所以,除非必要,否则应该尽量从列表尾部进行元素的增删操作。


列表初始化:

#创建列表
li = [1, 2, 3, 'abc', 4.5, [2, 3, 4], {1:'one'}]
#创建空列表
li=[]


获取列表长度:

#获取列表长度
li = [1, 2, 3]
print (len(li))
3



索引:

li = [1, 2, 3, 4, 5]
print(li[0])  #列表第一个元素
print(li[3])  #列表第四个元素
print(li[-1]) #列表倒数第一个元素
1
4
5



添加元素:

#list.append(x) 将元素x添加到列表list尾部
li=[1,2,3]
li.append([4,5,6])
print (li)
[1, 2, 3, [4, 5, 6]]
#list.extend(L) 将列表L中所有元素添加至列表list尾部
li = [1, 2, 3]
li.extend([4, 5, 6])
print(li)
[1, 2, 3, 4, 5, 6]
#list.insert(index,x) 在指定位置index处添加元素x
li = [1, 2, 3]
li.insert(2,'a')
print(li)
[1, 2, 'a', 3]

删除元素:

li = [1, 2, 3, 4, 5, 4, 4]
li.pop()   #删除最后一个元素(默认)
print(li)

li.pop(2)   #删除索引为2的元素
print(li)

del(li[0])   #删除第一个元素
print(li)

li.remove(4)  #删除列表中首次出现的指定元素
print(li)
[1, 2, 3, 4, 5, 4]
[1, 2, 4, 5, 4]
[2, 4, 5, 4]
[2, 5, 4]


元素是否存在:

li = [1, 2, 3, 4, 5]
print(1 in li)
print(6 in li)
True
False

列表是否为空:
li = []
if not li:
    print('Empty')
else:
    print('Not Empty')

if len(li)==0:
    print('Empty')
else:
    print('Not Empty')
Empty
Empty


列表遍历:

li = [1, 2, 3]
for i in li:
    print(i)
for i in range(len(li)):
    print(li[i])
1
2
3
1
2
3


列表翻转:

li = [1, 2, 3, 4, 5]
li.reverse()   #对列表进行翻转
print(li)
[5, 4, 3, 2, 1]

列表排序:
li=['a','b',1,2,'A','B','ABC']
li.sort()
print(li)
[1, 2, 'A', 'ABC', 'B', 'a', 'b']

切片:

切片有三个参数[start:end:step]   

li = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(li[3:6])  #选择3<= index <6 的数据
print(li[:4])   #省略第一个参数,默认为0
print(li[5:])   #省略第二个参数,默认为len(li)
print(li[:])    #省略全部参数,选择全部
print ('')
print(li[::2])   #步长为2
print(li[3::2])
print(li[::-1])   #反向
print(li[::-2])
print(li[-6:-1:1])
print(li[-1::-1])
[4, 5, 6]
[1, 2, 3, 4]
[6, 7, 8, 9, 10]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

[1, 3, 5, 7, 9]
[4, 6, 8, 10]
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
[10, 8, 6, 4, 2]
[5, 6, 7, 8, 9]
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]



字符串操作:

(在python中,不允许对字符串直接进行修改,可利用列表对字符串进行操作)

s = 'abcdefg'
li = list(s)
li[4] = 'E'
li[5] = 'F'
print(li)
s = ''.join(li)
print(s)
['a', 'b', 'c', 'd', 'E', 'F', 'g']
abcdEFg






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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值