python3之列表

python基础回顾——列表篇

前言

列表是python中蛮方便也重要的一个基础数据结构,本身也很灵活,当然灵活也是有代价的,不过作为新手更多关注的还是列表本身使用吧。


列表

由一系列按特定顺序排列的元素组成。你可以创建包含字母表中所有字母、数字0~9或所有家庭成员姓名的列表;也可以将任何东西加入列表中,其中的元素之间可以没有任何关系。鉴于列表通常包含多个元素,给列表指定一个表示复数的名称(如letters 、digits 或names )是个不错的主意。
python中表示列表使用[],并用逗号来分隔其中的元素。
访问列表内容可以通过下标索引进行访问,下标索引从0开始。

    >>> L = [1,'1',2,'2']
    >>> L
    [1, '1', 2, '2']
    >>> L[1]
    '1'
    >>> L[0]
    1
列表操作
  1. 修改列表元素值
    和变量赋值相同,通过索引获取列表对应元素进行赋值。

    
    >>> L[0]=11
    >>> L
    [11, '1', 2, '2']
  2. 添加列表元素

    • 在列表末端添加元素,append()

      >>> new_L=[]
      >>> new_L
      []
      >>> new_L.append(1)
      >>> new_L
      [1]
      >>> new_L.append(2)
      >>> new_L
      [1, 2]
    • 在列表中间添加元素
      使用方法insert() 可在列表的任何位置添加新元素。

      >>> new_L.insert(0,"1")
      >>> new_L
      ['1', 1, 2]
  3. 删除列表元素

    • del语句删除列表任意元素(在知道索引的情况下),使用del 语句将值从列表中删除后,你就无法再访问它了。

      >>> new_L
      ['1', 1, 2]
      >>> del new_L[0]
      >>> new_L
      [1, 2]
    • pop()方法删除列表元素,该方法删除列表末端的元素,但删除元素时仍可使用该元素,即可将其赋值或其他操作。

      >>> new_L
      [1, 2]
      >>> pop_temp = new_L.pop()
      >>> pop_temp
      2
      >>> new_L
      [1]

      pop()也可指定列表中的对应元素进行删除操作,加入参数表示元素索引下标即可。

      >>> new_L
      [1, 2, 3]
      >>> new_L.pop(1)
      2

      如果你不确定该使用del 语句还是pop() 方法,下面是一个简单的判断标准:如果你要从列表中删除一个元素,且不再以任何方式使用它,就使用del 语句;如果你要在删除元素后还能继续使用它,就使用方法pop() 。

    • remove()方法,不知道要从列表中删除的值所处的位置,只知道要删除的元素的值,可使用方法remove()。
      根据列表中元素值进行删除元素,和pop()方法相同,在删除的同时可以使用其对应值,可参照pop()方法介绍。

      >>> new_L
      [1, '2', 3]
      >>> new_L.remove('2')
      >>> new_L
      [1, 3]

      注意  方法remove() 只删除第一个指定的值。因为列表允许多个相同值存储,如果要删除的值可能在列表中出现多次,就需要使用循环来判断是否删除了所有这样的值。

  4. 列表排序
    前面介绍列表时说到它是按照特定顺序排列元素的,但是列表不是不可改变的,也就是顺序的特定性也是分不同情况的,如果没有改变那列表就是按照输入的顺序进行存储表示,如果有顺序需求也可以对其进行排序操作。

    • 永久性排序,sort(),按照元素值首字母顺序进行排序,永久性地修改了列表元素的排列顺序,再也无法恢复到原来的排列顺序。

      
      >>> temp_list = ['zemp','temp','lamp','amp']
      >>> temp_list
      ['zemp', 'temp', 'lamp', 'amp']
      >>> temp_list.sort()
      >>> temp_list
      ['amp', 'lamp', 'temp', 'zemp']
    • 反向永久性排序,在使用sort()方法时加入参数reverse=True。

      >>> temp_list.sort(reverse=True)
      >>> temp_list
      ['zemp', 'temp', 'lamp', 'amp']
    • 临时排序,不改变列表原先的排列顺序,也可以进行反序排列使用参数reverse。

      >>> sorted(temp_list)
      ['amp', 'lamp', 'temp', 'zemp']
      >>> temp_list
      ['zemp', 'temp', 'lamp', 'amp']
      >>>temp_list.sort()
      >>> sorted(temp_list,reverse=True)
      ['zemp', 'temp', 'lamp', 'amp']
      >>> temp_list
      ['amp', 'lamp', 'temp', 'zemp']
    • 反向排序,不使用参数,可直接使用reverse()方法,进行永久反向排序,将原先列表的元素顺序进行反传排列,如果需要恢复为原先的顺序再次使用reverse()方法即可。

      >>> temp_list
      ['amp', 'lamp', 'temp', 'zemp']
      >>> temp_list.reverse()
      >>> temp_list
      ['zemp', 'temp', 'lamp', 'amp']
      >>> temp_list.reverse()
      >>> temp_list
      ['amp', 'lamp', 'temp', 'zemp']
  5. 列表长度计算
    使用len()方法进行获取列表的长度,即列表元素个数。

    
    >>> temp_list
    ['amp', 'lamp', 'temp', 'zemp']
    >>> len(temp_list)
    4

小结

列表的基本知识初略写了一下,包括列表的初始化、添加、修改和删除操作,对几种有所差异的方法进行了对比和示例,当作一起回顾吧,之后回顾到字典的时候我可能会联系一下,毕竟我刚学的时候就习惯列表总是忽略字典,而且不少方法的使用其实相似。共勉。

附录资料
python编程入门

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值