一、列表

列表与数组相似,定义一个列表 a=[1,2,3,4,5]

1.基本操作

  1. a=[1,2,3,4]
  2.  
  3. #切片 范围取值时,包括第一项但不包括最后一项,顾头不顾尾
  4. print(a[0:]) #从头到尾取值,输出1 2 3 4
  5. print(a[1:3]) #从第2位取值到第4位,输出2 3
  6. print(a[0:-1])#从第1位取值到倒数第2位,输出1 2 3
  7. print(a[3::-1])#从第4位倒着取值到第1位,输出4,3,2,1 a[start:end:step]
  8.  
  9. #添加 append insert
  10. a.append(5)#默认插到最后一个位置,输出1,2,3,4,5
  11. print(a)
  12. a.insert(1,1.5)#在第2位插入一个1.5
  13. print(a)
  14.  
  15. #修改
  16. a[1] = 1.4#修改第2项为1.4
  17. print(a)
  18. a[1:3] = ['b','c']#修改第23项为 'b','c'
  19. print(a)
  20.  
  21. #删除 remove pop del
  22. a.remove(1)#删除“1
  23. print(a)
  24. b = a.pop(1)#根据索引删除并存入b
  25. print(a)
  26. print(b)
  27. del a[0]#删除列表列表中的第一个
  28. print(a)
  29. del a#整个对象从内存中删除 

这里添加一个需要注意的地方:

在修改中,如果选定要修改的元素个数比新的元素个数要少,会删除选定元素的最后一位元素

例子:

  1. a=[1,2,3,4,5,6]
  2. a[1:4] = ['b','c']#选定了3个元素
  3. print(a)#输出[1, 'b', 'c', 5, 6]

2.列表的自带方法

(1)count()方法

得到列表中的某一元素的出现次数

  1. a=[1,1,1,1,2,3,4]
  2. num = a.count(1)
  3. print(num)
    #输出4

(2)extend()方法

将两个列表合并起来,具体是把目标列表加到原列表之后

  1. a=[1,2,3,4]
  2. b=[2,3,3]
  3. a.extend(b)
  4. print(a)
  5. #输出[1, 2, 3, 4, 2, 3, 3]

(3)index()方法

从列表中检索目标元素并返回位置,若目标元素不存在会报错

  1. a=[1,2,3,4]
  2. print(a.index(2))
  3. #输出[1]

注意:若检索的是复数元素,只会检索到第一个目标元素的位置。

(4)reverse()方法

将列表倒序

  1. a=[1,2,3,4]
  2. a.reverse()
  3. print(a)
  4. #输出[4, 3, 2, 1]

(5)sort()方法

将按ASCII表的顺序排序(默认从小到大)

可以对sort()方法中的reverse参数进行修改,令reverse=True 可以使列表从大到小排列

  1. a=[2,3,1,4]
  2. a.sort()
  3. print(a)
  4. #输出[1, 2, 3, 4]
  5.  
  6. a.sort(reverse=True)
  7. print(a)
  8. #输出[4, 3, 2, 1]

(6) 如何判断一个对象是否是列表

  1. a=[1,2,3,4,5,6]
  2. if type(a) is list:
  3. print(True)
  4. else:
  5. print(False)

从零开始的Python学习Episode 4——列表的更多相关文章

  1. 从零开始的Python学习Episode 13——常用模块

    模块 一.time模块 时间戳(timestamp) :时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量. 元组(struct_time)   :struct_time元组共有9 ...

  2. 从零开始的Python学习Episode 12——迭代器&生成器

    生成器 列表生成式 用于快速地生成一个列表 a = [x*x for x in range(1,9)] print(a) #输出[1, 4, 9, 16, 25, 36, 49, 64] 也可以用于生 ...

  3. 从零开始的Python学习Episode 23——进程

    ---恢复内容开始--- 进程 由于GIL的存在,python中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程.Python提供了非常好用 ...

  4. 从零开始的Python学习Episode 22——多线程

    多线程 线程 线程是操作系统能够进行运算调度的最小单位.它被包含在进程之中,是进程中的实际运作单位.一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务. ...

  5. 从零开始的Python学习Episode 20——面向对象(3)

    面向对象之封装 封装,即隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别:将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体. 隐藏 在python中用双下划线开 ...

  6. 从零开始的Python学习Episode 19——面向对象(2)

    面向对象之继承 继承是一种创建新类的方式,新建的类可以继承一个或多个父类(python支持多继承),父类又可称 为基类或超类,新建的类称为派生类或子类. 子类会“”遗传”父类的属性,从而解决代码重用问 ...

  7. 从零开始的Python学习Episode 17——序列化

    序列化 我们把对象(变量)从内存中变成可存储或传输的过程称之为序列化,在Python中叫pickling,在其他语 言中也被称之为serialization,marshalling,flattenin ...

  8. 从零开始的Python学习Episode 16——模块

    一.模块 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相 ...

  9. 从零开始的Python学习Episode 15——正则表达式

    正则表达式 正则表达式(或 RE)是一种小型的.高度专业化的编程语言,(在Python中)它内嵌在Python中,并通过 re 模块实现,所以使用时要导入re模块.正则表达式模式被编译成一系列的字节码 ...

随机推荐

  1. http1.X与2.0

    HTTP HTTP 1.X HTTP是建立在TCP协议上的,HTTP协议的瓶颈及优化都是基于TCP协议本身的特性. TCP建立连接时有三次握手 会有1.5RTT的延迟,为了避免每次请求都经历握手待来的 ...

  2. HTML&CSS 问题

    1.子div使用浮动,父div高度自适应(个人感觉好用) 方法: css: <style> .clear{ clear:both} </style> html:在父div关闭之 ...

  3. 使用py2exe将python程序打包成exe程序

    近日帮朋友写了个python小程序,从互联网上抓取一些需要的文章到本地.为了运行方便,希望能转换成exe程序在windows下定期执行.从百度上找了些文章,发现py2exe的应用比较多,遂使用之. 1 ...

  4. Spring入门第一课:Spring基础与配置Bean

    1.入门 Spring是简化java开发的一个框架,其中IoC和AOP是Spring的两个重要核心.由于Spring是非侵入性的,通过Ioc容器来管理bean的生命周期,还整合了许多其他的优秀框架,所 ...

  5. Oracle条件判断列数量非where

    sum(case when typename='测试' then 1 else 0 end)

  6. mysql 的基本操作总结--增删改查

    本文只是总结一下mysql 的基本操作,增删改查,以便忘记的时候可以查询一下 1.创建数据库 语法:CREATE DATABASES 数据库名; 例子: CREATE DATABASES studen ...

  7. flask第三方插件WTForms

    在django中有ModelForm, 虽然flask原生没有提供, 但是强大的第三方也提供了这样的功能 虽然不如django的强大, 但是基本的功能还是可以有的, 下面就来使用一哈. WTForms ...

  8. 大数据学习--day02(标识符、变量、数据类型、类型转换、进制转换、原码反码补码)

    标识符.变量.数据类型.类型转换.进制转换.原码反码补码 标识符: java50个关键字不能做标识符,以数字开头不能做标识符(这个老是忘记写一个类名的时候) 变量: 变量分为成员变量和局部变量,注意作 ...

  9. STM32(11)——DMA

    简介: DMA:Direct Memory Access,直接存储器访问.DMA传输数据从一个地址空间复制到另外一个地址空间.当CPU初始化这个传输动作,传输动作本身就是DMA控制器来实现和完成.典型 ...

  10. 20190121-n个人围成一圈,凡报到3的人退出圈子,最后留下的是原来第几号的那位

    1. 报数问题:有n个人围成一圈,顺序排号.从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位 思路:此题主要问题在于但凡报到3的人退出圈子,而报数的号码与圈子的 ...