什么是List
Hello,小白同胞们,我回来啦,前面的学习中,我们已经知道了两种python的数据类型:int和str,今天将要给大家接着介绍Python中一种非常常见,非常有用的数据类型,那就是List(列表),在Python中用中括号表示[]
那这个List到底是什么东西呢,其实说白了就是一组有序的数据集合,怎么理解呢,最直观的理解就是像个盒子,我们可以把整数啊,字符串啊,还有其他很多类型的数据统统放在里面,但是要注意,它是有顺序的。
举个栗子
让我们举个栗子,上篇笔记我们学习了变量,先复习一下:
a = 1
b = 'xiaobai'
c = 23.67
d = Ture
这里我声明了4个变量a,b,c,d 分别给它们赋值为整数,字符串,浮点数,布尔型,然后我可以把它们直接装入一个List中:
lst = [a,b,c,d]
print(lst) # 输出 [1,'xiaobai',23.67,True]
很简单吧,这样我们就新建了一个List,然后把新建的列表赋给变量lst,注意这里是有顺序的,因为我是依次将a,b,c,d放入其中
创建一个List
看过了上面的栗子,让我们直接创建几个列表吧:
first_list = [] #新建一个空List, 因为里面什么都没有
second_list = [1,2,3,4,'love'] # 各种类型的数据都可以往里扔
third_list = [ True,False,12.333,'My name is xiao bai'] # 同上
让我们查看一下刚刚创建好的三个列表:
print(first_list )
[]
print(second_list)
[1, 2, 3, 4, 'love']
print(third_list)
[True, False, 12.333, 'My name is xiao bai']
其实除了这些,列表的创建方式还有很多,可以利用list()通过转化其他数据结构而来,也可以创建多个列表在一个列表中实现嵌套等等,之后我会在讲完Python基础起步之后专门开一个Python小白进价的专栏,会详细讲到List的使用技巧,但是目前,知道这些足够啦
List基础方法,添加值,修改,删除值
让我们从添加值到列表开始,首先让我们新建一个空列表:
lst = [] # 新建一个空列表
print("Intial empty List: ",lst)
Out:[]
利用列表自带的append方法可以直接依次为空列表添加值:
lst.append(1)
lst.append('paris')
lst.append(True)
print(lst)
Out:[1,'paris',True]
这样我们就依次把1,'paris',True 三个值加进列表lst里面了,那如果我们要是想查看列表中的一个值应该怎么办呢,见下图:
就像我刚才特意强调的,列表是有顺序的,表示索引的东西叫做Index,它是从0开始的,所以如果拿我们的例子来说,1 对应的索引为0,'paris'对应的索引为1,True 对应的索引为2,要查看列表中的一个值可以直接用这种新式:List[Index],比如:
lst[0] # 1
lst[1] # 'paris'
lst[2] # True
lst[:] # [1, 'paris', True]
lst[0:2] # [1, 'paris']
lst[-1] # True
如果索引是单独的一个数字,会直接输入对应的值,但是索引还可以用切片的形式表示:
List[起始Index :结束Index]
这里要注意一点,它不包括最后结束的Index,所以当我使用lst[0:2]查看时,它只输出对应索引为0和1的值。
好啦,那如果我现在想要改变List中一个值也很简单,因为我们了解了索引,便能很方便的定位元素啦,如果我要修改1和Ture的值为 'My','Life' :
lst[0]='My'
lst[2]='Life'
print(lst)
Out: ['My', 'paris', 'Life']
如果是删除的话可以用List的自带函数叫remove() 或者pop()
lst.remove("My")
print(lst)
Out:['paris', 'Life']
Remove 注意两点:
- 如果正确删除,不会有任何反馈。没有消息就是好消息
- 如果所删除的内容不在list中,就报错。注意阅读报错信息:x not in list
如果是pop呢?
lst.pop()
Out: 'Life'
print(lst)
Out: ['paris']
pop(index)如果括号里没有任何东西,会默认删除List里面最后一个值,如果pop(2)的话会删除List里面索引为2的值,而且这个方法很有意思,它会自动返回被删除的值,用人话说就是,你删除List里面一个值,还得到了它。。。
List总结
- 列表可以是无限大,包含任意类型的元素
- 列表中有很多强大的自带方法,比如len(List)可以获得一个列表的长度,还有sort(),filter(),reduce(),map()等等,大家可以自己谷歌一下查查
- 相对来说,列表在性能上普遍不佳,因为有序,所以带索引,拖慢了一定速度,尤其是一个特别大的列表在运行查询相关的操作的时候,我们之后会讲
完结,撒花~
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。