3_列表(list)

3_列表(list)

1.定义
  • 列表是由一系列特定顺序排列的元素组成,其中的元素可以是字符串、数字,也可以将任何东西加入列表中,其中元素之间可以没有任何关系。在Python中,用方括号[ ]来表示列表,并用英文状态下的逗号,来分隔列表中的元素。
2.语法
  1. 格式:list = [元素1,元素2,...,元素n,]
  2. 一个简单的列表: hobbys = ['读书','运动','游戏',]
  3. 注意:在定义列表时,最好在最后一个元素的末尾也加上, ,这样在只有加入新的元素时不会容易出错。
3.访问列表的元素
  1. 列表是有序集合,因此需要访问列表中的元素时,只需指出该元素的索引即可。要访问列表元素,可指出列表名,后面再指出元素索引,并将其放入方括号即可。例如:访问第二个元素print(hobbys[1])
  2. 注意: 在Python中,列表元素的索引是从0开始的。也就是列表的第一个元素索引是0,第二个元素是1…,根据这种简单的技术方式,要访问列表的任何元素,都可将其位置减1,并将结果作为索引。
  3. 访问列表中特殊位置的元素:当需要访问列表中最后一个元素时,Python提供了一种特殊的语法。通过将索引制定为-1,可让Python返回最后一个列表元素。如:print(hobbys[-1])。当然这种约定也适合其他负数索引,例如索引-2将返回倒数第二个列表元素…以此类推。这种语法很有用,因为你经常需要在不知道列表长度的情况下访问最后一个列表元素。
4. 修改、添加和删除列表元素
  1. 修改列表中的元素。格式:列表名[索引] = 新值

  2. 向列表添加新元素

    • 在列表末尾添加元素,格式:.append(值)。你可以一开始建一个空的列表,通过循环向列表中添加值。比如:

      nums = []
      for i in range(0,11):
          nums.append(i)
      print(nums)
      

      运行结果:

      [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

    • 在列表中添加元素,格式:.insert(index,value)。这种操作会将列表中插入索引后面既有的每个元素索引都右移一位。

    num_list = [1,2,3,4,6,7,8,9]
    print(num_list)
    print('插入之前数字9的索引:{}'.format(num_list.index(9)))
    
    num_list.insert(3,5) # 在索引为3的位置插入数字5
    print(num_list)
    print('插入之后数字9的索引:{}'.format(num_list.index(9)))
    

    运行结果:

    [1, 2, 3, 4, 6, 7, 8, 9]
    插入之前数字9的索引:7
    [1, 2, 3, 5, 4, 6, 7, 8, 9]
    插入之后数字9的索引:8

  3. 删除列表中的元素

  • 使用del语句删除元素:如果知道元素所在列表中的位置,可使用del语句。格式:del 列表名[索引]。使用del语句将值从列表中删除后,就无法再访问他它。 例如:
 ```python
 num_list = [1,2,3,4,5,6,7,8,9]
 print('删除之前:{}'.format(num_list))
 del num_list[1]
 print('删除之后:{}'.format(num_list))
 ```

 > 运行结果:
 >
 > 删除之前:[1, 2, 3, 4, 5, 6, 7, 8, 9]
 > 删除之后:[1, 3, 4, 5, 6, 7, 8, 9]
  • 使用pop方法删除元素:有时候你要将元素从列表中删除,并接着使用它的值。这时候,你可以使用.pop(index)方法。实际上,你可以使用.pop()来删除列表中任意位置的元素,只需在括号中指定要删除的元素索引即可,当不指定索引时,默认弹出最后一个元素。格式: list.pop(index)
 ```python
 num_list = [1,2,3,4,5,6,7,8,9]
 print('删除之前:{}'.format(num_list))
 num = num_list.pop(4)
 print('删除的值:{}'.format(num))
 print('删除之后:{}'.format(num_list))
 ```

 > 运行结果:
 >
 > 删除之前:[1, 2, 3, 4, 5, 6, 7, 8, 9]
 > 删除的值:5
 > 删除之后:[1, 2, 3, 4, 6, 7, 8, 9]
  • 根据值删除元素:有时候,你不知道要删除元素的所在的位置,如果只知道删除元素的值,可使用 .remove(value),格式:list.remove(value)注意.remove()方法只删除列表中第一个指定的值,如果要删除的值在列表中出现多次,就需要使用列表的.count()方法+循环进行删除。
 ```python
 num_list = [1,2,3,4,5,6,7,8,6,9]
 print('删除之前:{}'.format(num_list))
 num_list.remove(6)
 print('删除之后:{}'.format(num_list))
 ```

 > 运行结果:
 >
 > 删除之前:[1, 2, 3, 4, 5, 6, 7, 8, 6, 9]
 > 删除之后:[1, 2, 3, 4, 5, 7, 8, 6, 9]
5.组织列表
  1. 当你创建的列表元素中,元素的排列顺序是无法预测的,因为你并非总能控制用户提供的顺序。你经常需要以特定的顺序呈现信息,有时候,你希望保留列表最初的排列顺序,而有时侯又需要调整排列顺序。在Python中提供了很多组织列表的方式。
  2. 使用方法.sort() 对列表进行永久性排序
  • .sort()方法永久性修改了列表元素的排列顺序。默认是按照升序排列。你可向.sort()方法传递参数 reverse=True,按照降序排列。如果对字母进行排序,会按照ASCII表进行排序。
  • 格式:list.sort(reverse=True)
  1. 使用函数sorted()对列表进行临时排序
    • 有时候我们需要保留列表元素原来的排列顺序,同时以特定的顺序呈现它们,可使用函数sorted(),默认升序排列,你可以向函数sorted()传递参数reverse=True,进行降序排列。
    • 格式:sorted(list,reverse=True)
    1. 注意:在所有字母不是全部小写时,按字母顺序排列列表要复杂些,决定排列顺序时,有多种解读大写字母的方式。
  2. 倒着打印列表
  • 想要反转列表元素的排列顺序,可使用方法.reverse(),⚠️注意.reverse()方法是指将列表元素的位置(索引)反转进行排列。此方法也是永久性地修改列表元素的排列顺序,但是你可以恢复到原来的排列顺序,只需要再次使用.reverse()方法即可。
  • 格式:list.reverse()
6. 确定列表的长度
  1. 有时候我们需要知道列表中有几个元素,函数len()可快速获取列表的长度。此方法是从 1 开始计数。此方法往往结合循环使用。
  2. 格式: len(list)
7.总结
  • 你可理解当使用方法对列表排序,是永久性排序,使用函数对列表排序,是临时性排序。使用方法排序不能直接打印,使用函数排序可直接打印。比如print(list.sort())❌,print(sorted(list))✅。
  • 当使用方法改变列表的排列顺序时,不需要将改变顺序存储到变量中,可直接使用方法修改,比如list_num = [1,2,3,4,] list_num1 = list_num.reverse()/sort() ❌ list_num.reverse()/sort() ✅
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值