python数组操作

定义:
lista=[]                              #定义一个空集
lista=[1,2,3,4]                   #定义时直接赋值
lista=[[1,2],[2,3],[3,4]]       #定义二维数组

访问:
list[index]                       #取得数组第一维(取行)
list[index][subindex]       #取得数组第二维(取值)
[x[2] for x in list]             #取得数组第三列(取列)

统计:
len(list)                            #数组的长度,如len([1,2,3,1]) =>4
list.count(obj)                  #obj在list数组中出现的次数,如[1,2,3,1].count(1) =>2
max(list)                          #求list数组中的最大值,如max([1,2,3,1]) =>3
min(list)                           #求list数组中的最小值,如max([1,2,3,1]) =>1

添加:
list.append(obj)              #在list数组的末尾添加元素obj
list.insert(index, obj)       #在list数组的index索引位置插入元素obj
list.extend(seq)               #在list列表末尾一次性追加另一个序列seq中的多个值(用新列表扩展原来的列表)
list=list1+list2                  #同上,上例相当于list=list+seq

删除:
del list[2]                         #删除list数组下标为2的元素
list.pop([index=-1])         #移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
list.remove(obj)              #移除列表中某个值的第一个匹配项

排序:
list.reverse()                   #反向列表中元素,如[1,2,3]变为[3,2,1]
list.sort(cmp=None, key=None, reverse=False)           #对原列表进行排序
    >>cmp -- 可选, 自定义排序方法。
    >>key -- 可选,指定用来进行比较的元素。
    >>reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。

#示例1
listd = ['e', 'a', 'u', 'o', 'i']     #定义
listd.sort(reverse=True)              #反向排序
print(listd)                          #['u', 'o', 'i', 'e', 'a']

#示例2
# 获取列表的第二个元素
def takeSecond(elem):
    return elem[1]
# 列表
random = [(2, 2), (3, 4), (4, 1), (1, 3)]
# 指定第二个元素排序
random.sort(key=takeSecond)
# 输出:[(4, 1), (2, 2), (1, 3), (3, 4)]
print(random)

去重:
list=set(list)                #set([1,2,3,1])  =>[1,2,3]

比较:
cmp(list1, list2) 
    >>如果比较的元素是同类型的,则比较其值,返回结果。
    >>如果两个元素不是同一种类型,则检查它们是否是数字。
        如果是数字,执行必要的数字强制类型转换,然后比较。
        如果有一方的元素是数字,则另一方的元素"大"(数字是"最小的")
        否则,通过类型名字的字母顺序进行比较。
    >>如果有一个列表首先到达末尾,则另一个长一点的列表"大"。
    >>如果我们用尽了两个列表的元素而且所 有元素都是相等的,那么结果就是个平局,就是说返回一个 0。

转化:
list(seq)           #将元组转换为列表
str(list)             #将列表转化为字符串

运算:
1. 差集

方法a:
ret_list = [item for item in a_list if item not in b_list]
方法b:
ret_list = list(set(a_list)^set(b_list))
2. 并集
ret_list = list(set(a_list).union(set(b_list)))
3. 交集
ret_list = list((set(a_list).union(set(b_list)))^(set(a_list)^set(b_list)))

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值