Python - List列表 - l = [1,2,3] - 操作

创建list

只要把逗号分隔的不同的数据项使用方括号括起来即可。
如下所示:

list0 = []  # 空列表
list1 = ['phthon', 'java', 1997, 2000]
list2 = [1, 2, 3, 4, 5 ]
list3 = ["a", "b", "c", "d"]
与字符串的索引一样,列表索引从0开始。列表可以进行截取、组合等。

列表操作的函数

函数例子输出说明
alist.append()alist.append('app')alist = ['app']列表末尾添加
alist.insert()alist.insert( 3, 2)alist = ['app',2]列表指定位置添加
alist.insert()alist.insert(3,3)alist = ['app', 2, 3]列表指定位置添加
alist.insert()alist.insert(3,4)alist = ['app', 2, 3, 4]列表指定位置添加
alist.insert()alist.insert(3,5)alist = ['app', 2, 3, 5, 4]列表指定位置添加
alist.extend()alist.extend([99, '00'])alist = ['app', 2, 3, 5, 4,99, '00']列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
pop_data=alist.pop()pop_data=alist.pop()alist = ['app', 2, 3, 5, 4,99]默认删除list中最后一个元素,pop_data='00'
pop_data=alist.pop()pop_data=alist.pop(1)alist = ['app', 3, 5, 4, 99]删除第2个元素(0开头),pop_data=2
alist.remove()alist.remove('app')alist = [3, 5, 4,99]删除list指定元素
n = len(alist)n = len([1,2,3])n = 3列表元素个数
lst2 = list(set())lst2 = list(set([2, 1, 3, 4, 1]))lst2 = [1, 2, 3, 4]去重
m = max(alist)m = max([1,2,3])m = 3返回列表元素最大值
n = min(alist)n = min([1,2,3])n = 1返回列表元素最小值
l = list(seq)l = list((1,2,3))l = [1, 2, 3]将元组转换为列表

list信息

count() 用于统计某个元素在列表中出现的次数。

alist = [123, 'xyz', 'zara', 'abc', 123]
print (alist.count(123))
以上实例输出结果如下:
>>>2
使用index()方法:用于从列表中找出某个值第一个匹配项的索引位置。

alist = [123, 'xyz', 'zara', 'abc', 123]
print (alist.index(123))
以上实例输出结果如下:
>>>0

切片

索引访问列表中的值
注:切片同样适用于字符串,字符串也有下标

方法	说明
name[n:m]	切片是不包含后面那个元素的值(顾头不顾尾)
name[:m]	如果切片前面一个值缺省的话,从开头开始取
name[n:]	如果切片后面的值缺省的话,取到末尾
name[:]	如果全部缺省,取全部
name[n:m:s]	隔s个元素取一次; 步长是正数从左往右取; 步长是负数从右往左取
alist =  [123, 'xyz', 'zara', 2018, 'only']
alist[0] # 输出结果:123
alist[-2] # 输出结果:2018
alist[1:] # 输出结果:['xyz', 'zara', 2018, 'only']
alist[:3] # 输出结果:[123, 'xyz', 'zara']
alist[1:3] # 输出结果:['xyz', 'zara']

sort()排序和反序

sort() 用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。

语法:list.sort(cmp=None, key=None, reverse=False)

参数:
cmp :可选参数, 如果指定了该参数会使用该参数的方法进行排序。
key:主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
reverse: 排序规则,reverse = True 降序, reverse = False 升序(默认)。

alist = [123, 'xyz', 'zara', 2018, 'only']
alist.sort()  #降序
alist.sort(reverse = True)   #升序
使用reverse() 方法:用于反向列表中元素。

alist = [123, 'xyz', 'zara', 2018, 'only']
alist.reverse()
print(alist)
以上实例输出结果如下:
>>>['only', 2018, 'zara', 'xyz', 123]

map()挑出list

map(方法名, 列表)
类似for循环

def f(x):
    return x*x
print (map(f, [1, 2, 3]))
输出结果:
[1, 4, 9]


def f(self):
    return self["id"]
print (map(f, [{"id":1},{"id":2}]))
输出结果:
[1, 2]

差集、并集、交集

# 差集
a = [(2, 'aa', 'dsad'), (3, 'cc', 'dada'), (0, 'ss', 'okok')]
b = [(2, 'aa', 'dsad')]
 
 
data = set(a).difference(set(b))
print(type(data))
print(data)
<class "set">
{(3, 'cc', 'dada'), (0, 'ss', 'okok')}
 
data2 = list(data)
print(type(data2))
print(data2)
<class "list">
[(3, 'cc', 'dada'), (0, 'ss', 'okok')]


# 并集
a = [(2, 'aa', 'dsad'), (3, 'cc', 'dada'), (0, 'ss', 'okok')]
b = [(2, 'aa', 'dsad')]
 
data = set(a).union(set(b))
print(type(data))
print(data)
<class "set">
{(2, 'aa', 'dsad'), (3, 'cc', 'dada'), (0, 'ss', 'okok')}
data2 = list(data)
print(type(data2))
print(data2)
<class "list">
[(2, 'aa', 'dsad'), (3, 'cc', 'dada'), (0, 'ss', 'okok')]

# 交集

a = [(2, 'aa', 'dsad'), (3, 'cc', 'dada'), (0, 'ss', 'okok')]
b = [(2, 'aa', 'dsad')]
 
 
data = set(a).intersection(set(b))
print(type(data))
print(data)
<class "set">
{(2, 'aa', 'dsad')}
data2 = list(data)
print(type(data2))
print(data2)
<class "list">
[(2, 'aa', 'dsad')]

enumerate()加下标

seasons = ['Spring', 'Summer', 'Fall', 'Winter']
list(enumerate(seasons))
[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
list(enumerate(seasons, start=1))       # 下标从 1 开始
[(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值