列表

列表
1)创建列表

>>> list1=[1,2,3,4]
>>> type(list1)
<type 'list'>
>>> list2=list() #通过函数来创建列表
>>> list2
[]

2)使用list()将其他类型转换成列表

>>> list('cat')
['c', 'a', 't']
>>> 
>>> birthday='1/6/1992'
>>> birthday.split('/')
['1', '6', '1992']
>>> splittime='a/b//c/d///e'
>>> splittime.split('/')
['a', 'b', '', 'c', 'd', '', '', 'e'] #列表中出现空串元素
>>> splittime.split('//')
['a/b', 'c/d', '/e']

3)使用[offsset]来获取元素

>>> mares=['hello','world','sunshine']
>>> mares[:-1] #从开头取到最后一个的前一个
['hello', 'world']
>>> mares[-1] #从尾部开始计数
'sunshine'

4)包含列表的列表

>>> cat=[['a','v','v'],['mimi','kk']]
>>> cat[0]
['a', 'v', 'v']

5)使用【offset】修改列表

>>> cat=[['a','v','v'],['mimi','kk']]
>>> cat[0]
['a', 'v', 'v']
>>> cat[0][0]='A'
>>> cat[0]
['A', 'v', 'v']

6)指定范围并使用切片提取元素

>>> li=[1,2,3,4,5]
>>> li[::2] 设定步长为2
[1, 3, 5]
>>> li[::-1]  ##实现列表逆序
[5, 4, 3, 2, 1]
>>> 

7)使用append()添加元素至尾部

>>> li.append('A')
>>> li
[1, 2, 3, 4, 5, 'A']
>>> 
8)使用extend()合并列表
>>> mares.extend(li)
>>> mares
['hello', 'world', 'sunshine', 1, 2, 3, 4, 5, 'A']

9)使用insert()在指定位置插入元素

>>> li
[1, 2, 3, 4, 5, 'A']
>>> li.insert(1,'B')
>>> li
[1, 'B', 2, 3, 4, 5, 'A']

10)使用del删除指定位置的元素

>>> li
[1, 'B', 2, 3, 4, 5, 'A']
>>> del li[1]
>>> li
[1, 2, 3, 4, 5, 'A']

11)使用remove()删除具有指定值的元素

>>> li
[1, 2, 3, 4, 5, 'A']
>>> li.remove('A')
>>> li
[1, 2, 3, 4, 5]

12)使用pop()获取并删除指定位置的元素

>>> li
[1, 2, 3, 4, 5]
>>> li.pop(0)
1

13)使用index()查询具有特定值的元素的位置

>> li
[2, 3, 4, 5]
>>> li.index(4)
2
>>> mares
['hello', 'world', 'sunshine', 1, 2, 3, 4, 5, 'A']
>>> mares.index('world')
1

14)使用in判断值是否存在

>>> mares
['hello', 'world', 'sunshine', 1, 2, 3, 4, 5, 'A']
>>> 'hello' in mares
True

15)使用count()统计特定值出现的次数

>>> kk=[1,2,3,2,2,1]
>>> kk.count(2)
3

16)使用join()转换为字符串

可以将join理解为split的逆过程

17)使用sort()排序
使用sort()会对原列表进行排序,改变原列表内容
使用sorted()会返回原列表的副本,原列表内容不变

>>> ll=[2,4,6,81,4]
>>> ll.sort()
>>> ll
[2, 4, 4, 6, 81]

18)使用len()获取长度

>> len(ll)
5

19)复制

>>> b=copy.copy(a)
>>> b
[1, 2, 3]
>>> c=list(a)
>>> c
[1, 2, 3]
>>> a[0]='A'
>>> b
[1, 2, 3]
>>> c
[1, 2, 3]
原文地址:https://www.cnblogs.com/hanfei-1005/p/5704268.html