基础数据类型 : list

list主要操作:索引、切片、查询、修改、增加、删除、扩展、统计、排序、获取下标、拷贝……

1.1  索引

 由图:

  • list正向下标从0开始
  • list反向下标从-1开始
    • 获取下标对应的单个元素:list[下标]

1.2  查询

  • 通过索引查询元素:切片
    • list [a:b]   获取列表list中下标a到下标b之间的元素
    • list [a:]     获取列表list中下标a开始的所有元素
    • list [b:]     获取列表list中从下标0开始到下标b之前的所有元素
    • list [:]       获取列表list中所有的元素
    • list [a:b:c]获取列表list中从下标a到下标b,从下标a开始递增c的所有元素
  • 通过元素查询索引:index()
1 list = [ 'a', 'b', 'a', 'd', 'e', 'a']
2 print(list.index("a")) # 查询第一个元素a对应的下标
3 print(list.index("a",3)) # 查询第从四个元素a对应的下标 运行结果:
0
5
  • 循环查询 : for  i  in   list:
1 list = [ 'a', 'b', 'c' ]
2 for i in list:
3 print(i) 运行结果:
a
b
c

1.3  修改

 ### 修改列表中的元素:list[下标] = 新元素
1 list = ["海绵宝宝","派大星","章鱼哥","蟹老板"] # 根据索引改元素
2 list[0] = "小猪佩奇" # 修改单个元素
3 print(list)

# 根据切片改元素
4 list[0:2] = "小猪佩奇","乔治" # 修改多个元素
5 print(list) 6 list[0:2] = "小猪佩奇" # 将元素进行拆分,再修改,与extend类似
7 print(list) 运行结果: ['喜洋洋', '派大星', '章鱼哥', '蟹老板'] ['小猪佩奇', '乔治', '章鱼哥', '蟹老板'] ['小', '猪', '佩', '琪', '章鱼哥', '蟹老板']

1.4 增加

  • list.append("m")                追加:在列表的末尾添加元素m
  • list.insert(index,"m")         插入 : 在列表中下标未index的位置插入元素m
  • list.extend("m")               迭代插入:将添加的元素m进行拆分,并依次插入到列表末尾  (将一个列表追加到另一个列表后面,组成一个新的列表)         
 1 list = ["海绵宝宝","派大星","章鱼哥","蟹老板"]
2 # 在列表末尾追加元素“史丹利”
3 list.append("史丹利")
4 print(a,list)
5 # 在第二个位置插入元素“史丹利”
6 list.insert(2,"史丹利")
7 print(list)
8 # 将添加的元素"海超人"进行拆分,并依次追加插入
9 list.extend("海超人")
10 print(list)

1.5  删除

  • list.pop()           根据下标删除元素(有返回值)

    • 若未传入值,默认删除最后一个元素;
    • 若传入下标,删除下标对应的元素。
  • list.remove("m")     根据元素名删除元素(无返回值)
  • list.clear()         删除列表中所有的元素(返回空列表)
  • del list         删除列表
    • del list [x] 删除下标对应的元素
    • del list [a:b]
 1 list = ["海绵宝宝","派大星","章鱼哥","蟹老板"]
2 # 删除“蟹老板”,未传值,默认删除最后一个元素
3 list.pop()
4 print(list)
5 # 删除章鱼哥,删除下标2对应的元素
6 a = list.pop(2)
7 print(a,list)
8 # 删除章鱼哥
9 list.remove("章鱼哥")
10 print(list)
11 # 删除列表中所有的元素
12 list.clear()
13 print(list)
14 # 删除整个列表
15 del list
16 print(list)
17 # 删除“章鱼哥”
18 del list[2]
19 print(list)
20 # 删除“章鱼哥”和“蟹老板”
21 del list[2:4]
22 print(list) 运行结果: ['海绵宝宝', '派大星', '章鱼哥']
章鱼哥 ['海绵宝宝', '派大星', '蟹老板']
['海绵宝宝', '派大星', '蟹老板']
[]
<class 'list'>
['海绵宝宝', '派大星', '蟹老板']
['海绵宝宝', '派大星']

1.6 其他方法

###  统计  len(list) 、 list.count()

1 list = ["海绵宝宝","派大星","章鱼哥","蟹老板"]
2 ### 计算列表的长度
3 print(len(list))
4 ### 计算元素出现的次数
5 print(list.count("海绵宝宝")) 运行结果:
4
1
### 列表排序  sort() 、reverse()

 1 list_num = [3,8,2,0,34,66,11]
2 ## 从小到大排序
3 list_num.sort()
4 print(list_num)
5 ### 从大到小排序
6 list_num.sort(reverse=True)
7 print(list_num)
8 ### 倒序排列
9 list_num.reverse()
10 print(list_num) 运行结果:

 [0, 2, 3, 8, 11, 34, 66]
 [66, 34, 11, 8, 3, 2, 0]
 [0, 2, 3, 8, 11, 34, 66]

【python 3】 列表方法操作汇总的更多相关文章

  1. python字符串,列表常用操作

    24天养成一个好习惯,第五天! 一.字符串需要掌握的操作 1.取值(索引取值)需要注意的是只能取,不能改 msg = 'hello world' print(msg[4]) 2.切片(顾头不顾尾) m ...

  2. Python学习总结3:元组、列表的操作汇总

    参考博客:http://www.cnblogs.com/QG-whz/p/4782809.html 1. 是否可变 元组:用()或tuple函数定义,不可变(元素的值以及整个元组): 列表:用 [] ...

  3. 【python 3】 字符串方法操作汇总

    基础数据类型:str 1.1  字符串大小写转换 所有字母大写 : string.upper() 所有字母小写 : string. lower() 第一个单词的第一个字母大写,其他字母小写 :  st ...

  4. 【python 3】 集合方法操作汇总

    基本数据类型 : set 集合(set)特点 : 无序 不能重复(自动去重) 用 {} 或 set()函数 来表示集合 空集合 : set() 1 name = {"江户部柯南", ...

  5. 【python 3】 字典方法操作汇总

    基础数据类型:tuple 1.1  新增 dic["key"] = value                            字典中没有key就添加,有key就覆盖 dic ...

  6. python关于列表的操作

    列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型.列表中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类 ...

  7. 【Python】列表各种操作

    # -*- coding:utf-8 -*- #列表操作name_list = ['zhangsan','lisi','wangwu'] #append 在最后插入name_list.append(& ...

  8. python之列表常见操作

    list = [1,2,3,4,5,6,7,8,9,0,0,0,0,0] listSet = list.set(list)#将列表中的数据进行去重处理 此时listSet中的数据为[1,2,3,4,5 ...

  9. python list列表 方法总结

    深入链表(most on lists) The list data type has some more methods. Here are all of the methods of list ob ...

随机推荐

  1. Python 进阶 异步async/await

    一,前言 本文将会讲述Python 3.5之后出现的async/await的使用方法,我从上看到一篇不错的博客,自己对其进行了梳理.该文章原地址https://www.cnblogs.com/dhcn ...

  2. 【LeetCode每天一题】Add Binary(二进制加法)

    Given two binary strings, return their sum (also a binary string).The input strings are both non-emp ...

  3. 一个农民工混迹于 IT 行业多年后的泣血总结

    一看题目,你心里一定闪出一个想法,这又是一篇软文吧,是不是,不想辩别了,自己判断吧哈哈.这是根据本人真实经历所写的一篇总结.假如你满足你的现状,这就是一篇软文,请立刻关闭此文章,继续你现在的生活.   ...

  4. python类与对象-如何创建可管理的对象属性

    如何创建可管理的对象属性 问题举例 在面向对象编程中, 我们把方法看作对象的接口, 直接访问对象的属性可能是不安全的,或设计上不够灵活. 但是使用调用方法在形式上不如访问属性简洁. circle.ge ...

  5. php爬虫入门

    本篇文章介绍PHP抓取网页内容技术,利用PHP cURL扩展获取网页内容,还可以抓取网页头部,设置cookie,处理302跳转. 一.cURL安装 采用源码安装PHP时,需要在configure时添加 ...

  6. python查询数据库返回数据

    python查询数据库返回数据主要运用到flask框架,pymysql 和 json‘插件’ #!/usr/bin/python # -*- coding: UTF-8 -*- import pymy ...

  7. Go 初体验 - 闭包的几种情况

    闭包: 闭包是可以包含自由(未绑定到特定对象)变量的代码块,这些变量不在这个代码块内或者任何全局上下文中定义,而是在定义代码块的环境中定义.要执行的代码块(由于自由变量包含在代码块中,所以这些自由变量 ...

  8. Emmet:HTML/CSS代码快速编写神器教程

    Emmet的前身是大名鼎鼎的Zen coding,如果你从事Web前端开发的话,对该插件一定不会陌生.它使用仿CSS选择器的语法来生成代码,大大提高了HTML/CSS代码编写的速度,比如下面的演示: ...

  9. WebApi接口访问异常问题。尝试创建“testController”类型的控制器时出错。请确保控制器具有无参数公共构造函数

    本来运行的好好的webAPI 接口突然报了个 :“尝试创建“testController”类型的控制器时出错.请确保控制器具有无参数公共构造函数” 错误.耗了半宿最终解决了, 原因: api控制器中引 ...

  10. 【论文速读】Pan He_ICCV2017_Single Shot Text Detector With Regional Attention

    Pan He_ICCV2017_Single Shot Text Detector With Regional Attention 作者和代码 caffe代码 关键词 文字检测.多方向.SSD.$$x ...