Python学习笔记(4)列表
2019-02-26
列表(list):
①创建方法:用‘[ ]’,将数据包括起来,数据之间用逗号隔开。
②空列表:empty = []
③增删改查:
1)增加:
a.append()方法——将元素添加到列表的末尾。
测试代码:
list = ["My","Name","Is"]
list.append("PegasusK")
运行结果:
['My', 'Name', 'Is', 'PegasusK']
b.Insert(A,B)方法——A表示你想把元素添加在什么位置,B表示你想插入的元素。
测试代码:
list = ["My","Name","Is"]
list.insert(1,"good")
运行结果:
['My', 'good', 'Name', 'Is']
c.extend(L)方法——使用一个列表扩展另一个列表,所以参数L应该是一个列表,使用这个方法是向列表末尾添加多个元素。
测试代码:
list = ["My","Name","Is"]
list.extend(["哎嘿嘿","偶呵呵"])
运行结果:
['My', 'Name', 'Is', '哎嘿嘿', '偶呵呵']
2)删除:
a.remove()——不需要知道该元素在列表中的位置,只需要知道要删除的元素在列表中就可以了。
测试代码:
list = ["My","Name","Is"]
list.remove("Name")
运行结果:
['My', 'Is']
b.del——能够删除列表中指定位置的元素(del是一个语句,并不是一个方法,所以不用加‘()’)。此方式也能够删除整个列表(del 列表名)。
测试代码:
list = ["My","Name","Is"]
del list[0]
运行结果:
['Name', 'Is']
c.pop()——“弹出”元素,该方法默认弹出列表中的最后一个元素,可以添加一个索引值作为参数,会弹出这个索引值对应的元素。
测试代码:
list = ["My","Name","Is"]
list.pop(2)
运行结果:
['My', 'Name']
3)更改:
测试代码:
list = [1,4,2,5]
list[2] = 1500
print(list)
运行结果:
[1, 4, 1500, 5]
4)查找:
a.count()——计算它的参数在列表中出现的次数。
测试代码:
list = [12,132,254,365,12,12,254]
num = list.count(12)
print(num)
运行结果:
3
b.Index()——返回它的参数在列表中的位置。
测试代码:
list = [12,132,254,365,12,12,254]
num = list.index(132)
print(num)
运行结果:
1
c.In,not in——判断一个层次的成员关系,如果列表里面还有列表,通过索引值用和二维数组类似的方式访问列表里面的列表。
测试代码:
list = [12,132,254,365,12,12,254]
print(12 in list)
print(12 not in list)
运行结果:
True
False
④列表分片(slice):
1)格式:Lsit[1 :3]——左边索引值是开始位置,右边索引值是结束位置(结束位置上的元素是不包含的)。
测试代码:
list = ["age","name","school","sd"]
list2 = list[1:3]
print(list2)
运行结果:
['name', 'school']
2)注意:
a.利用列表分片,得到原来一个列表的拷贝,而原来的列表并没有发生改变。
b.没有开始位置,Python会默认开始位置是0,如果从指定位置到列表末尾,则可以省去结束位置。
c.分片也可以接收第三个参数,其表示步长,默认情况下为1,如果步长设置为-1,则列表反转。
测试代码:
list = ["age","name","school","sd"]
list2 = list[::2]
list3 = list[::-1]
print(list2)
print(list3)
运行结果:
['age', 'school']
['sd', 'school', 'name', 'age']
⑤其他:
1)列表的比较:当列表中存在较多个元素时,默认从第一个元素开始比较,第一个元素大,就算整个列表大。(字符串同样的道理,只不过字符串比较的是第一个字符对应的ASCII码值的大小。)
测试代码:
list = ["age","name"]
list2 = ["school","work"]
print(list > list2)
print(list < list2)
运行结果:
False
True
2)乘号(*)也叫重复操作符,它也可以应用在列表中,相当于拷贝列表元素,多次写入列表中。
测试代码:
list = ["age","name"]
print(list * 3)
运行结果:
['age', 'name', 'age', 'name', 'age', 'name']
3)reverse()——列表原地翻转。
测试代码:
list = ["age","name","school","sd"]
list.reverse()
print(list)
运行结果:
['sd', 'school', 'name', 'age']
4)sort()——指定的方式对列表的成员进行排序,默认不需要参数,从小到大排序。(sort()方法其实有三个参数,形式为sort(func,key,reverse),func默认使用归并排序的排序算法,key为关键字。)
sort(reversr = False)表示不颠倒顺序,把False改为True,列表就相当于从大 到小排序。
测试代码:
list = [5,7,3,9,1234]
list.sort()
print(list)
list.sort(reverse=True)
print(list)
运行结果:
[3, 5, 7, 9, 1234]
[1234, 9, 7, 5, 3]
⑥注意:
为一个列表指定另一个名字的做法,相当于给同一个列表加上不同的标签,真正的拷贝要使用分片的方法。
测试代码:
list = [1,4,2,5]
list2 = list[:]
list3 = list
list.sort()
print(list)
print(list2)
print(list3)
运行结果:
[1, 2, 4, 5]
[1, 4, 2, 5]
[1, 2, 4, 5]
Python学习笔记(4)列表的更多相关文章
- python学习笔记整理——列表
Python 文档学习笔记 数据结构--列表 列表的方法 添加 list.append(x) 添加元素 添加一个元素到列表的末尾:相当于a[len(a):] = [x] list.extend(L) ...
- python学习笔记-列表和字典
由于最近在看深度学习的代码,看到需要建立字典和列表来存储什么东西的时候,就想要去把字典和列表好好的了解清楚,其应用范围,差别,等等东西 首先我们来介绍,在python中存在如下的数据结构:列表list ...
- python学习笔记(列表、元组、购物车实例)
一.列表 列表和字典是最常用的两种数据类型 1. 需求:怎么存放班级80多人的姓名,如何实现? names = ["Zhangyang","Guyun",&qu ...
- Python学习笔记4—列表
列表定义 >>> a=['] >>> type(a) <type 'list'> >>> bool(a) #列表有值,则为true T ...
- python学习笔记之列表与元组
一.概述 python包含6种内建的序列,其中列表和元组是最常用的两种类型.列表和元组的主要区别在于,列表可以修改,元组则不能修改 使用上,如果要根据要求来添加元素,应当使用列表:而由于要求序列不可修 ...
- Python学习笔记(1)-列表
列表是什么? 列表由一系列按特定顺序排列的元素组成.列表看起来像这样:[1,2,3,4,1].在列表中,可以由零个或多个元素组成,元素之间用逗号分开,具有相同值元素允许出现多次 使用[ ]或list( ...
- Python学习笔记_week2_列表、元组、字典、字符串、文件、i编码
一. 列表.元组 names=["A","B","C","D"] print(names) print(names[0] ...
- Python学习笔记4—列表List
列表定义 Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. >>> a=['] >>> type(a) &l ...
- python学习笔记(2)--列表、元组、字符串、字典、集合、文件、字符编码
本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1.列表和元组的操作 列表是我们以后最长用的数据类型之一,通过列表可以最方便的对数据实现最方便的存储.修改等操作 定 ...
- python学习笔记(三)-列表&字典
列表: 一.列表操作"""Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素.比如,列出班里所有同学的名字,就可以用一 ...
随机推荐
- MVC笔记(一)
1 MVC介绍 MVC是一个编程思想. 是一种设计模式 思想: 将一个功能分解成3个部分, M: Model (模型) 处理数据相关的逻辑 V: View (视图) 显示页面 C: Controlle ...
- 【codeforces 805D】Minimum number of steps
[题目链接]:http://codeforces.com/contest/805/problem/D [题意] 给你一个字符串; 里面只包括a和b; 让你把里面的"ab"子串全都去 ...
- hdu 2491 贪心
#include<stdio.h> #include<stdlib.h> #define N 110000 struct node { int u,v,len,time; }m ...
- Exchange EMC打开出错 解决
Exchange控制台打开出错如何解决 1.卸载win server功能中的winrm iis 2.重启 3.安装winrm iis 4.查看default web site 有没有绑定80端口,没有 ...
- EntboostChat 0.9(越狱版)公布,iOS免费企业IM
恩布互联公布IOS免费企业IM 0.9越狱预览版本号,支持全部iPhone4/5手机(6未上真机測试),iPad平板,主要功能包含单聊.群聊,企业组织结构,文本.表情.图片.文件.截图.离线消息等: ...
- MFC窗口去边框、置顶、全屏、激活
静态移除长提边框非常easy,直接设置"Border"属性为"none"就可以 "Maximize Box", "Minimize ...
- hdu4870 Rating (高斯消元或者dp)
Rating Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- jsp不通过form和Ajax提交
在页面里面我们一般都通过form表单和Ajax向后台提交请求,但是我如今页面没有form表单,也不想通过ajax异步提交. 解决方式例如以下:location.href="${rootPat ...
- 【Android 系统开发】使用 Source InSight 阅读 Android 源代码
1. 安装 Source Insight (1) Source Insight 相关资源 安装相关资源 : -- 下载地址 : http://www.sourceinsight.com/down35. ...
- 数据结构(Java语言)——LinkedList简单实现
下面是一个能够使用的LinkedList泛型类的实现.这里的链表类名为MyLinkedList,避免与类库中反复. MyLinkedList将作为双链表实现,并且保留到该表两端的引用.这样仅仅要操作发 ...