基础数据类型 : 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. jQuery 选择具有特殊属性的元素

    如今有这样一种需求,须要选出全部有背景图片的元素. 这个问题有点棘手.我们无法使用选择表达式来完毕这个问题了. 使用jQuery的DOM过滤方法filter(),能够依据函数中表达的不论什么条件选择元 ...

  2. 虚拟机上不了网的 VMware Workstation 与 Device/Credential Guard 不兼容

    VMware Workstation 与 Device/Credential Guard 不兼容   和    虚拟机上不了网的问题  解决方法: VMware Workstation 与 Devic ...

  3. python发送邮件心得体会

    利用本地smtp server发送 windows下尝试装了两个smtp server大概配置了下,发现没法生效,也没时间仔细研究了.装上foxmail发现以前可以本地发送的选项已经无法找到. 不带附 ...

  4. php通过phpize安装扩展

    //下载libevent扩展文件压缩包(在当前系统哪个目录下载随意) ~# wget http://pecl.php.net/get/libevent-0.1.0.tgz //解压文件 ~# tar ...

  5. HTML表单简单练习

    代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <tit ...

  6. 缺陷的背后---LIMIT M,N 分页查找

    一.问题发现篇 最近组内做了一次典型缺陷分享时,翻阅2018年的缺陷,找到了一个让我觉得“有料”的bug(别的同事测试发现的),先大致简单的描述下这个问题: 需要实现的功能:从一个DB库同步某一段时间 ...

  7. SQL kaggle learn : WHERE AND

    WHERE trip_start_timestamp Between '2017-01-01' And '2017-07-01' and trip_seconds > 0 and trip_mi ...

  8. Xamarin.Forms + Prism,整理页面导航跳转流程

    3个Page,Page1 -> Page2 -> Page3 -> Page2 -> Page1. PageViewModel实现接口:INavigatingAware, IN ...

  9. python '%r'或者'{!r}'的意思

    转载:https://blog.csdn.net/a19990412/article/details/80149112 这两个都是python的转译字符, 类似于%r, %d,%f >>& ...

  10. python中sorted()和set()去重,排序

    前言 在看一个聊天机器人的神经网络模型训练前准备训练数据,需要对训练材料做处理(转化成张量)需要先提炼词干,然后对词干做去重和排序 words = sorted(list(set(words))) 对 ...