美文网首页
Python代码阅读(第70篇):删除列表一边的n个元素

Python代码阅读(第70篇):删除列表一边的n个元素

作者: FelixZzzz | 来源:发表于2021-11-01 17:58 被阅读0次

    Python 代码阅读合集介绍:为什么不推荐Python初学者直接看项目源码

    本篇阅读的代码实现了去除列表左边或者右边n个元素的功能。

    本篇阅读的代码片段来自于30-seconds-of-python

    drop

    def drop(a, n = 1):
      return a[n:]
    
    # EXAMPLES
    print(drop([1, 2, 3])) # [2, 3]
    print(drop([1, 2, 3], 2)) # [3]
    print(drop([1, 2, 3], 42)) # []
    

    drop函数接收一个列表,和一个拟删除元素数量n,返回删除左边指定数量元素后的列表。

    函数使用分片的方法,直接从索引为n的元素(第n+1个元素)开始,返回新的列表。

    drop_right

    def drop_right(a, n = 1):
      return a[:-n]
    
    # EXAMPLES
    print(drop_right([1, 2, 3])) # [1, 2]
    print(drop_right([1, 2, 3], 2)) # [1]
    print(drop_right([1, 2, 3], 42)) # []
    

    drop_right函数和上个函数类似,但是在分片的时候,使用了负数,a[:-n]相当于a[:len(a)-n],这样列表切片就会舍弃最右边的n个元素。

    例如第一个示例drop_right([1, 2, 3])中,a = [1, 2, 3]len(a) = 3n = 1。函数返回a[:len(a)-n],即a[:2],即[1, 2]舍弃了右边n个元素。

    相关文章

      网友评论

          本文标题:Python代码阅读(第70篇):删除列表一边的n个元素

          本文链接:https://www.haomeiwen.com/subject/hdxnoltx.html