python列表

列表:

作用 :将数据进行封装,可以同时存放不同类型的变量。
split():可以将字符串转为列表。

s = "I love python"   
s.split(" ")			#将 s 以空格分隔
['I', 'love', 'python']
s.split("*")
['I love python']
s.split(",")
['I love python']
s.split()
['I', 'love', 'python']

1、创建列表:用[]将数据包裹起来,数据之间用逗号隔开就行。

>>> num = [1,2,3,4,5]
>>> type(num)
<class 'list'>
>>> for i in num:
	print(i)

	
1
2
3
4
5

乘号可以重复列表中的元素。

>>> num = [857,"小甲鱼"]
>>> print(num * 3)
[857, '小甲鱼', 857, '小甲鱼', 857, '小甲鱼']
>>> 

列表中可以放不同的数据类型,甚至还可以加另一个列表:

>>> list = [1,"哈士奇",3.4,[1,2,3,4]]

2、向列表中添加元素:

  • append():将一个参数添加到列表末尾(若在末尾添加多个参数,用extend()方法)。
>>> num = [1,2,3,4]
>>> num.append(6)
>>> num
[1, 2, 3, 4, 6]
>>> 
  • insert():在任意位置添加元素。
>>> num.insert(2,10)
>>> num
[1, 2, 10, 3, 4, 6]
>>> 

3、删除列表中的元素:

  • pop():先将参数提取出来,再删除该参数:
>>> num.pop(3)
3
>>> num
[1, 2, 10, 4, 6]
>>> 
  • remove():删除指定的参数。
>>> num.remove(4)
>>> num
[1, 2, 10, 6]
>>> 
  • del语句:既能删除某个位置的参数,也能删除整个变量。
>>> del num[2]
>>> num
[1, 2, 6]
>>> del num
>>> num
Traceback (most recent call last):
  File "<pyshell#18>", line 1, in <module>
    num
NameError: name 'num' is not defined
>>> 

4、提取列表中的元素:

  • 提取某个位置的参数。
>>> list1 = ["唐僧","孙悟空","猪八戒","沙和尚","白龙马"]
>>> print(list1[3])
沙和尚
>>> 
  • 提取某段参数:用冒号将两个索引值隔开,左边是开始位置,右边是结束位置,右边部分不包含索引值。
>>> print(list1[1:3])
['孙悟空', '猪八戒']
>>> 

可以用[:]提取所有元素。

>>> print(list1[:])
['唐僧', '孙悟空', '猪八戒', '沙和尚', '白龙马']
>>> 

  • 如果从零位置开始则可以不写左边索引值,从某个位置到末尾位置则可以不用写右边索引值。
>>> print(list1[:2])
['唐僧', '孙悟空']
>>> print(list1[1:])
['孙悟空', '猪八戒', '沙和尚', '白龙马']
>>> 
  • 列表切片操作还接受第三个参数,其代表的是步长。
>>> print(list1[0:4:2])
['唐僧', '猪八戒']

此操作中可以用[::]提取所有参数。

>>> print(list1[::2])
['唐僧', '猪八戒', '白龙马']
>>> 

也可以将步长设为负数。

>>> print(list1[::-1])
['白龙马', '沙和尚', '猪八戒', '孙悟空', '唐僧']
>>> print(list1[::-2])
['白龙马', '猪八戒', '唐僧']

还能使用del语句。

>>> del list1[::2]
>>> list1
['孙悟空', '沙和尚']
>>> 

5、in 和 not in 只能判断同一层次的列表。

>>> tt = ["小马奥",1,["小甲鱼","小象"]]
>>> "小马奥" in tt
True
>>> "小甲鱼" in tt
False
>>> 

有时候需要去除列表中的重复数据,就可以用 in 和 not in 巧妙地实现。

>>> old_list = ["韩信","韩信","李白","赵云","马超","吕布"]
>>> old_list
['韩信', '韩信', '李白', '赵云', '马超', '吕布']
>>> new_list = []
>>> for i in old_list:
	if i not in new_list:
		new_list.append(i)

		
>>> print(new_list)
['韩信', '李白', '赵云', '马超', '吕布']
>>> 

6、有关列表的常用方法:

  • count():统计元素在列表中出现的次数。
>>> list1 = [1,1,2,34,5,6,87,98,77]
>>> list1.count(1)
2
>>> 
  • index():返回元素第一次在列表中出现的索引值。
>>> list1.index(34)
3
>>> 

index()方法可以限定查找到范围。

>>> start  = list1.index(1) + 1
>>> stop = len(list1)
>>> list1.index(1,start,stop)
1
>>> 
  • reverse():将整个列表原地翻转。
>>> list1.reverse()
>>> list1
[77, 98, 87, 6, 5, 34, 2, 1, 1]
>>> 
  • sort():将列表元素从大到小进行排序。
>>> num = [43,3,6,87,54,37,1,2,5]
>>> num.sort()
>>> num
[1, 2, 3, 5, 6, 37, 43, 54, 87]
>>> 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值