Python列表建议收藏

在python中有六种内建的序列:列表、元祖、字符串、Unicode字符串、buffer对象和xrange对象。通用序列操作:1.索引(indexing)2.分片(slicing)3.

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

全栈程序员社区此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“全栈程序员社区”或者“www_javaforall_cn”或者微信扫描右侧二维码都可以关注本站微信公众号。

在python中有六种内建的序列:列表、元祖、字符串、Unicode字符串、buffer对象和 xrange对象。

通用序列操作:

  1. 索引(indexing)

  2. 分片(slicing)

  3. 加(adding)

  4. 乘(multiplying)

  5. 检查某个元素是否属于这序列的index(in)

  6. 计算序列的长度(len)

  7. 找出最大元素和最小元素(max/min)

本篇将介绍其中的列表,以下从列表定义、增删改查、列表生成式三个方面进行总结

1. 列表定义

  列表为Python内置数据类型,用[]表示,可以修改

2. 列表的增、删、改,查

  (1) 增

  append()

  extend() #必须在列表尾部拼接另一个链表

  insert() #指定索引位置插入字符

  (2) 删

  pop() #删除末尾的元素

  remove() #指定值进行删除

  del()  #用索引和切片进行删除

  clear() #清楚列表中的所有元素,保留列表这个对象

  (3) 查

  索引

  切片

  count()

  max()/min()

  (4) 排序

  sort()

  reserve()

  sorted() #对一个列表集合按照列表中某个位置的元素进行排序

li = [[1,2,3,4],[4,3,2,1],[2,4,1,3]]
destli = sorted(li, key = lambda element:element[3])
print (li)
print (destli)

>>> [[1, 2, 3, 4], [4, 3, 2, 1], [2, 4, 1, 3]]
>>> [[4, 3, 2, 1], [2, 4, 1, 3], [1, 2, 3, 4]]

  3. 列表生成式

  >>>[i for i in range(10) if i %2 == 0]

  [0, 2, 4, 6, 8]

  内建函数enumerate() 作用:在列表中为获得序号提供了一个更方便的方法

  >>>seq = ['a', 'b', 'c']

  >>>for i, element in enumerate(seq): seq[i] = "%d:%s"%(i, element)

  4. enumerate

  >>> for a,b in enumerate([1,2,3,4]):
    >>>  print (a, b)

  5. zip

  >>> for item in zip([1,2,3], [4,5,6]):

  >>> print (item)

  (1, 4) (2, 5)(3,6)

  >>> for item in zip(*zip([1,2,3], [4,5,6])):

  >>> print (item)

  (1,2,3)(4,5,6) 

  例:列表合并

Python列表建议收藏
Python列表建议收藏

#coding = utf-8

'''
    合并两个有序列表
'''
l1 = [1,3,5,7,8]
l2 = [2,4,6,9]

def _recursion_merge_sort2(l1, l2, tmp):
    if len(l1) == 0 or len(l2) == 0:
        tmp.extend(l1)
        tmp.extend(l2)
        return tmp
    else:
        if l1[0] < l2[0]:
            tmp.append(l1[0])
            del l1[0]
        else:
            tmp.append(l2[0])
            del l2[0]
        return _recursion_merge_sort2(l1, l2, tmp)
 
def recursion_merge_sort2(l1, l2):
    return _recursion_merge_sort2(l1, l2, [])

print (recursion_merge_sort2(l1,l2) )

View Code

sort 与 sorted 区别:

sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。

list 的 sort 方法返回的是对已经存在的列表进行操作,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。

extend和append的区别:

l1 = [1,3,5,7,8] l2 = [2,4,6,9]

l3 = []
#l3.append(l1)
#l3.append(l2)
#print (l3)
l3.extend(l1)
l3.extend(l2)
print (l3)

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

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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120230.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • kalidirsearch_kali.org

    kalidirsearch_kali.orgdirsearch是一个python3开发的目录扫描工具,目的是扫描网站的敏感文件和目录从而找到突破口。dirsearch使用:-u指定网址-e指定网站语言-w指定字典-r递归目录(跑出目录后,继续跑目录下面的目录)-random-agents使用随机UApythondirsearch.py-u网址-e*模板:pythondirsearch.py-uhttp://5073135b-4e2c-4551-b64f-242d901d8076.chall

    2022年9月27日
  • idea激活码到2022_通用破解码

    idea激活码到2022_通用破解码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月17日
  • java 工厂模式例子_java 工厂模式简单介绍及例子[通俗易懂]

    java 工厂模式例子_java 工厂模式简单介绍及例子[通俗易懂]java中工厂模式在javaee中经常碰见,是一种常见的模式,其可分为三种:静态工厂模式、工厂方法模式、抽象工厂模式。一下做一简单讲述和例子。静态工厂模式:顾名思义就知道他是用静态方法实现的,其创建的对象具有一定的特性,譬如说是某类的派生或者某接口的实现。其比较简单。例子如下Animal类:packagecom.bean;/***动物类*@authorLyonYao**/public…

    2022年7月20日
  • ebpf教程_宝马F底盘编程

    ebpf教程_宝马F底盘编程eBPF入门之编程•Feiskyhttps://feisky.xyz/posts/2021-01-29-ebpf-program/目录BCClibbpf-bootstrap内核源码小结eBPF提供了强大的跟踪、探测以及高效内核网络等功能,但由于其接口处于操作系统底层,新手入门起来还是有很大难度,特别是如何编写eBPF程序是入门的一大难点。本文将介绍一些常用的eBPF编程框架。BCC上篇文章介绍的BCC其实就提供了对eBPF的封装,前端提供Python

    2022年9月16日
  • 更换CSDN博客皮肤[通俗易懂]

    更换CSDN博客皮肤[通俗易懂]1.在博客设置页面F12,如下图,选中博客皮肤:2.把你喜欢的皮肤的value和ID与当前模板value和ID对换,如下图:3.点击保存之后刷新页面,如下图:…

    2022年7月14日
  • 自动编码器模型和代码解释

    自动编码器模型和代码解释CNN算法与程序研究 1)      深度学习基本理论方法http://wenku.baidu.com/view/2e630ddfc5da50e2524d7ff3 特征多,给出的信息多,识别准确性会提升。但是,计算复杂度增加,搜索的空间大,可以用来训练的数据在每个特征上就会稀疏。采用层次网络结构,BP一层隐层节点的浅层模型,带有一层隐层节点(如SVM、Boostin

    2022年6月7日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号