python数据类型之列表(list)和其常用方法
列表是python常用数据类型之一,是可变的,可由n = []创建,也可由n = list()创建,第一种方法更常用。
常用方法总结:
# 创建方法 n = [] 或者 n = list() # index 查找索引值
li = ['Edward', 'Mark', 'John', 5435, 123, 8, 8, 8, 6, 6, True, 1, False, 0]
print(li.index(True)) #
print(li.index(1)) # 10 1也可以代表True
print(li.index(False)) #
print(li.index(0)) # 12 0也可以代表False
print(li.index(8)) # 5 从左往右找不到第一个匹配的就返回 # 切片,包含开头,但是不包含结尾,顾头不顾尾。
print(li[1:3]) # ['Mark', 'John']
# 不能从右往左且,只能从左往右切
print(li[-5:-1]) # [6, True, 1, False]
# 如果想要最后一个,那么直接不写就行
print(li[-5:]) # [6, True, 1, False, 0]
# 只要前面的几个的,冒号加想要的数字就行
print(li[:5]) # ['Edward', 'Mark', 'John', 5435, 123]
# 步长,再在后面加一个冒号,然后写想要按几步走,2步走就是跳一个,以此类推。
print(li[:5:3]) # ['Edward', 'John', 123]
print(li[::2]) # 跳一步走,从头走到尾 # 增加
li.append('peiqi') # 只加到最后
print(li) # 插入
li.insert(0, 'abc') # 插入是加到前面
print(li) # ['abc', 'Edward', 'Mark', 'John', 5435, 123, 8, 8, 8, 6, 6, True, 1, False, 0, 'peiqi'] # 修改
li[0] = 'Mark'
print(li) # ['Mark', 'Edward', 'Mark', 'John', 5435, 123, 8, 8, 8, 6, 6, True, 1, False, 0, 'peiqi'] # 修改多个值
li[3:6] = 'Li Lei'
print(li) # ['Mark', 'Edward', 'Mark', 'L', 'i', ' ', 'L', 'e', 'i', 8, 8, 8, 6, 6, True, 1, False, 0, 'peiqi']
# 这个方法会显示多出来的,很少用 # 删除
li.pop() # 删除最后一个
print(li) # ['Mark', 'Edward', 'Mark', 'L', 'i', ' ', 'L', 'e', 'i', 8, 8, 8, 6, 6, True, 1, False, 0] li.remove(8) # 指定删除,从左开始找,找到第一个后删除,但只能删除一个。
print(li) # ['Mark', 'Edward', 'Mark', 'L', 'i', ' ', 'L', 'e', 'i', 8, 8, 6, 6, True, 1, False, 0] del li[3:9] # 全局方法,可以删除任何东西,可以批量删除
print(li) # ['Mark', 'Edward', 'Mark', 8, 8, 6, 6, True, 1, False, 0] # range也是顾头不顾尾,取第一个值不取最后一个值。 # while循环可以是死循环,for循环有边界 # 排序
li2 = ['a', 'e', 'b', 1, 34, 2, 'c']
# li2.sort() # 报错,int和str之间不能排序 li2 = ['a', 'z', 'c', 'm', 'u', 'G', '!', '*', ',', '.']
li2.sort() # 按ASCII码表的顺序来排
print(li2) # ['!', '*', ',', '.', 'G', 'a', 'c', 'm', 'u', 'z'] # 翻转 li2.reverse()
print(li2) # ['z', 'u', 'm', 'c', 'a', 'G', '.', ',', '*', '!'] # 拼接列表 # 方法1 li3 = [1, 2, 3]
li4 = ['a', 'b', 'c']
print(li4 + li3) # ['a', 'b', 'c', 1, 2, 3] # 方法2
li5 = ['z', 'x', 'c']
li3.extend(li5)
print(li3) # [1, 2, 3, 'z', 'x', 'c'] # 清空列表 clear
li6 = [1, 123, 312, '', '', '*', 'asd']
print(li6.clear()) # None # copy li7 = [3, 4, 5]
li8 = li7 # li8指向了li7,而不是li7的值
li7[0] = 'alex'
print(li7) # ['alex', 4, 5]
print(li8) # ['alex', 4, 5] li9 = [1, 2, 3]
li10 = li9.copy()
li9[0] = 'alex'
print(li9) # ['alex', 2, 3]
print(li10) # [1, 2, 3]
python数据类型之列表(list)和其常用方法的更多相关文章
- python数据类型:列表List和Set
python数据类型:列表List, Set集合 序列是Python中最基本的数据结构 序列中每个元素都分配一个数字,表示索引 列表的数据项不需要具有相同的类型 列表中的值可以重复并且有 ...
- Python数据类型list(列表)和tuple(元组)
list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示: >>> ...
- Python数据类型(列表)
文章内容参考了教程:http://www.runoob.com/python/python-basic-syntax.html#commentform Python 列表(List) 序列是Pytho ...
- Python之路-python数据类型(列表、字典、字符串、元祖)操作
一.列表: 列表的语法,以中括号开通和结尾,元素以逗号隔开.例如:name = [] 列表是以下标取值,第一个元素下标是0,第二个元素下标是1,最后一个元素下标是-1. 1.增加 #name = ...
- Python数据类型之列表
一.基本数据类型 整数:int 字符串:str(注:\t等于一个tab键) 布尔值: bool 列表:list (元素的集合) 列表用[] 元祖:tuple 元祖用() 字典:dict注:所有的数据类 ...
- Python基础-python数据类型之列表(四)
列表 格式 namesList = [ 字符串,数字,列表,元祖,集合] 列表中的元素可以是不 同类型的 列表的相关操作 列表中存放的数据是可以进行修改的,比如"增"." ...
- python 数据类型二 (列表和元组)
一.列表 1.1 列表的介绍 列表是python的基本数据类型之一,其他编程语言也有类似的数据类型,比如JS中的数组,java中的数组等等,它是以[]括起来,每个元素用逗号隔开,而且可以存放各种数据类 ...
- python数据类型之字典(dict)和其常用方法
字典的特征: key-value结构key必须可hash,且必须为不可变数据类型.必须唯一. # hash值都是数字,可以用类似于2分法(但比2分法厉害的多的方法)找.可存放任意多个值.可修改.可以不 ...
- python数据类型之字符串(str)和其常用方法
字符串是有序的,不可变的. 下面的例子说明了字符串是不可变的 name = 'alex' name = 'Jack' """ 并没有变,只是给name开启了一块新内存,储 ...
随机推荐
- SQLServer数据库表字段超长,找到超长字段脚本
平时开发系统时偶尔会遇到数据超长导致往数据库中保存时出错. 使用下边的脚本可以方便的找出超长的字段. 1.通过正式表创建临时表,修改临时表中varchar.nvarchar的长度为max ); ); ...
- MapReduce项目之气温统计
在本博文,我们要学习一个挖掘气象数据的程序.气象数据是通过分布在美国全国各地区的很多气象传感器每隔一小时进行收集,这些数据是半结构化数据且是按照记录方式存储的,因此非常适合使用 MapReduce 程 ...
- springboot springmvc 抛出全局异常解决方法
springboot中抛出异常,springboot自带的是springmvc框架,这个就不多说了. springmvc统一异常解决方法这里要说明的是.只是结合了springboot的使用而已.直接上 ...
- mysql查看各个表的大小
information_schema 数据库,在该库中有一个 TABLES 表,这个表主要字段分别是: TABLE_SCHEMA : 数据库名 TABLE_NAME:表名 ENGINE:所使用的存储引 ...
- svn检出项目报错
首先,我在浏览器访问svn检出项目地址是正常的,那么应该就是svn缓存的问题 1. 右键点击本地副本,TortoiseSVN -> Settings -> Saved Da ...
- 《C#高效编程》读书笔记01-使用属性而不是可访问的数据成员
在需求变更中,属性比数据成员更容易修改,例:客户对象不该与空白名称,若你使用公有属性封装Name,那么现在修改一处,而数据成员则可能要修改多处 public class Customer { priv ...
- 帝国empirecms去除后台登陆认证码
打开文件:\e\config\config.php 找到代码 $ecms_config['esafe']['loginauth']='abc'; 把值设为空即可,即改为 $ecms_config['e ...
- Python3中requests库学习01(常见请求示例)
1.请求携带参数的方式1.带数据的post data=字典对象2.带header的post headers=字典对象3.带json的post json=json对象4.带参数的post params= ...
- SqlServer中生成一串连续数字
在SQLServer中一串连续数字,如1,2,3,4,5,....或者 1 2 3 4 5 没有现成方法,网上都用通用表表达式递归生成.今天想到一个还算简单的方法,记录下来: select row_n ...
- 剑指offer38 数字在排序数组中出现的次数
这种方法没用迭代,而是使用了循环的方式 class Solution { public: int GetNumberOfK(vector<int> data ,int k) { if(da ...