Python List 用法小结

一、List列表基础语法和操作:

Python的列表也有索引:第一个索引是0,第二个索引是1,依此类推。

Python中List,它可以作为一个方括号内的逗号分隔值出现,且列表的数据项可以为不相同的类型。

List是序列可以进行的操作包括索引,切片,加,乘,检查成员。

List实例:

name = ['Michael', 'Bob', 'Tracy']
a = [5, 2, 3, 1, 4]
li = [{"day":2},{"day":1},{"day":3}]
jor =[5,'1',{"day":1}]

List创建:

  list1 = [ ]
  list2 = [2, 3, 4]
  list3 = ["red", "green"]
  list4 = [2, "three", ,{"day":1}]    #一个列表里面可以包含不同类型的元素

List访问:

List[0]  #取第一个值
List[0:5] #取前五个值
List[-1] #取最后一个值
List[-2:] #取最后两个值

List更新、追加和删除:

L1 = ['Google', 'Runoob', 'Taobao'] 
L1[1] = 'Great'  # 更新
L1.append('Baidu')  # append()方法追加

print(L1) # 结果为 ['Google', 'Great', 'Taobao', 'Baidu']

del L1[2] # 删除索引为2元素
print(L1) # 结果为 ['Google', 'Great', 'Baidu']

List排序:

List.sort()    #正向排序
List.reverse()  #反转列表
List.sort().reverse()  #先正向排序再反转列表,就是反向排序

List切片:

#列表切片,切取索引从a到b-1的元素
sample[a:b] 
#列表切片,切取索引从a到结束的元素
sample[a:] 
#列表切片,切取索引从0到b-1的元素
sample[:b] 
#列表复制,切取所有并赋值给一个变量
variable_name=sample[:]

List解析:详见 Barry_Lhs 编写的 Python列表解析式

  [表达式 for 元素 in 可迭代对象 if 条件]   list2 = [ x*0.5 for x in list1 if x <3] 

>>> list1 = [x for x in range(5)]
>>> list1
[0, 1, 2, 3, 4]
>>> list2 = [0.5 * x for x in list1]
>>> list2
[0.0, 0.5, 1.0, 1.5, 2.0]
>>> list3 = [x for x in list2 if x < 1.5]
>>> list3
[0.0, 0.5, 1.0]

嵌套列表:

使用嵌套列表即在列表里创建其它列表,例如:

>>>a = ['a', 'b', 'c']
>>> n = [1, 2, 3]
>>> x = [a, n]
>>> x
[['a', 'b', 'c'], [1, 2, 3]]
>>> x[0]
['a', 'b', 'c']
>>> x[0][1]
'b'

二、List中一些常用方法:

1、List元素去重:

>>> a
[1, 2, 2, 3, 6, 8]
>>> a = list(set(a))
>>> a
[1, 2, 3, 6, 8]
>>>

2、List合并:

Python将多个list合并为1个list,可以使用"+"号完成操作,或使用extend方法。

3、Python列表函数:

1len(list)
列表元素个数
2max(list)
返回列表元素最大值
3min(list)
返回列表元素最小值
4

list(seq)

将元组转换为列表

4、Python常用方法:

1list.append(obj)
在列表末尾添加新的对象
2list.count(obj)
统计某个元素在列表中出现的次数
3list.extend(seq)
在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
4list.index(obj)
从列表中找出某个值第一个匹配项的索引位置
5list.insert(index, obj)
将对象插入列表
6list.pop([index=-1])
移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
7list.remove(obj)
移除列表中某个值的第一个匹配项
8list.reverse()
反向列表中元素
9list.sort( key=None, reverse=False)
对原列表进行排序
10list.clear()
清空列表
11list.copy()
复制列表

使用注意问题:

  L.index(value[,begin[,end]])
        - 返回对应元素的索引下标,
        - begin为开始索引,end为结束索引
        - 当 value 不存在时触发ValueError错误

    L.insert(index,obj):在指定位置插入元素
        - index:索引值,插入到索引值之前

    L.count(x):返回列表中x的个数(没有,返回0)

    L.remove(value):从列表中删除值
        - 只删除第一次出现的value
        - 需要知道value

    L.copy():复制列表(生成新的id值;只复制一层,不复制深层对象)

    L.append(value)
        - 向列表末尾追加单个元素
        - L = [1,2,3]
          L.append([6,7,8])
      --> L = [1,2,3,[6,7,8]]

    L.extend(list)
        - 扩展,向列表追加列表
        - L = [1,2,3]
          L.extend([6,7,8])
       --> L = [1,2,3,6,7,8]
      也就是列表的合并
    >>> L1 = [1, 2, 3, 4, 5]
    >>> L2 = [20, 30, 40]
    >>> L1.extend(L2)
    >>> L1
    [1, 2, 3, 4, 5, 20, 30, 40]
   直接使用L1 + L2亦可

    L.clear(): 清空列表
        - 等同于 L[:] = []

    L.sort(reverse = False):排序
        - 将列表中的元素进行排序,默认顺序按值的小到大的顺序排列

    L.reverse():列表的反转,改变原列表的先后顺序,返回值None

    L.pop([index]):弹出元素
        - 不加index时,默认删除最后一个元素,并返回删除元素的引用关系
        - 删除索引对应的元素
  求和 sum(list_name)
  最大最小max(a) min(a)

 

Python中,enumerate()是一个内置函数,适用于Python 2.x和Python 3.x版本。它用于在可遍历或可迭代的对象(如列表、字符串)上进行枚举或列举操作。enumerate()函数的参数是可遍历的对象,它返回一个enumerate对象。 在for循环中使用enumerate()函数可以同时获取索引和值,这在需要同时获取索引和值的情况下非常有用。比如,你可以使用enumerate()函数来遍历一个列表并获取每个元素的索引和值。 下面是一个使用enumerate()函数的示例代码: ``` a = [1, 2, 3, 4, 5] for index, value in enumerate(a): print(index, value) ``` 输出结果: ``` 0 1 1 2 2 3 3 4 4 5 ``` 在这个示例中,我们使用enumerate()函数遍历列表a,并将每个元素的索引赋值给变量index,将每个元素的值赋值给变量value。然后,我们打印出索引和值。 除了在for循环中使用之外,你还可以将enumerate()函数的结果转换为字典,以便更方便地使用。下面是一个示例代码: ``` list = ['zky', 'cww', 'lj', 'lmq'] list = dict((item, index) for index, item in enumerate(list)) print(list) ``` 输出结果: ``` {'zky': 0, 'cww': 1, 'lj': 2, 'lmq': 3} ``` 在这个示例中,我们使用enumerate()函数遍历列表list,并将每个元素的索引和值作为键值对存储在字典中。最后,我们打印出这个字典。 总结来说,enumerate()函数可以用于在for循环中获取索引和值,并且还可以将其转换为字典以方便使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值