目录
1. 数据容器入门
如果我想要在程序中,记录50名学生的姓名,按照我们之前学习的内容,就只能一个个变量的去设置,这就太过繁琐了。引入数据容器之后,我们可以只用设置一个变量。学习数据容器,就是为了批量存储或批量使用多份数据。
Python中的数据容器:一种可以容纳多份数据的数据类型,容纳的每一份数据称之为1个元素,每一个元素,可以是任意类型的数据,如字符串、数字、布尔等。
数据容器根据特点的不同,如:是否支持重复元素;是否可以修改;是否有序等,分为5类,分别是,列表(list)、元组(tuple)、字符串(str)、集合(set)、字典(dict)。
2. 数据容器:list(列表)
(1). 列表的定义
列表内的每一个数据称之为一个元素,以 [] 作为标识,列表内每一个元素之间用,逗号隔开。
list1 = ['hello','python','study']
print(list1)
print(type(list1))
# list里的元素可以是不同的数据类型
list2 = ['hello', 15, 1.1314]
print(list2)
print(type(list2))
# list也算一种数据类型,因此list支持嵌套
list3 = ['hello', 15, ["qiantao","list"]]
print(list3)
print(type(list3))
(2). 列表的下标索引
为了从列表中取出特定位置的数据,我们可以使用列表的下标索引。列表的下标索引从0开始,所以一个列表有n个元素,那他的下标范围就是0~n-1。
list = ['hello','python','study']
print(list[0])
print(list[1])
print(list[2])
print(list[3]) # 报错:list index out of range
其实,列表还可以进行反向索引。 此时索引范围就变成了-n~-1。在这里大家一定要注意索引的顺序。
list = ['hello','python','study']
print(list[-3])
print(list[-2])
print(list[-1])
如果列表是嵌套的列表,同样支持下标索引。
list = [['hello','python'],['study','hard']]
print(list[0]) # ['hello', 'python']
print(list[0][0])
print(list[0][1])
print(list[1]) # ['study', 'hard']
print(list[1][0])
print(list[1][1])
(3). 列表的常用操作
列表除了可以定义,使用下标索引获取值以外,列表也提供了一系列功能:插入元素、删除元素、清空列表、修改元素、统计元素个数等等功能,这些功能我们都称之为:列表的方法。
在Python中,如果将函数定义为class(类)的成员,那么函数会称之为:方法。这部分会在面向对象进行详细学习。目前我们只需要知道要调用方法,必须用对象名.方法名即可。
mylist = ['hello','python','study','hard']
# 找到了这个元素会返回这个元素的下标,因此想知道下标是多少,我们要用变量来接收
i = mylist.index('hello')
print(i)
j = mylist.index(5) # 报错:ValueError: 5 is not in list
mylist = ['hello','python','study','hard']
mylist[0]='你好'
print(mylist[0])
mylist = ['hello','python','study','hard']
mylist.insert(2,'please')
print(mylist)
mylist = ['hello','python','study','hard']
mylist.append('gogogo')
print(mylist)
mylist = ['hello','python','study','hard']
mylist.extend([3,4,5])
print(mylist)
mylist = ['hello','python','study','hard']
# 语法一
del mylist[0]
print(mylist) #把'hello'删了,mylist里还剩3个元素
# 语法二
mylist.pop(2)
print(mylist)
# pop实际上这个元素取出来然后返回出去,因此我们也可以用变量来接收
mylist = ['hello','python','study','hard']
mylist.remove('hello')
print(mylist)
mylist = ['hello','python','study','hard