简介
这篇文章里我们将认识到python用来存储多个数据的类型,例如列表,元组,字符串,字典,集合这类
- 列表
- 列表的定义
- 列表的创建
- 向列表中添加元素
- 删除列表中的元素
- 获取列表中的元素
- 列表的常用操作符
- 列表的其他方法
- 元组
- 创建和访问一个元组
- 更新和删除一个元组
- 元组相关的操作符
- 内置方法
- 解压元组
- 字符串
- 字符串的定义
- 字符串的切片与拼接
- 字符串的常用内置方法
- 字符串格式化
- 字典
- 可变类型与不可变类型
- 字典的定义
- 创建和访问字典
- 字典的内置方法
- 集合
- 集合的创建
- 访问集合中的值
- 集合的内置方法
- 集合的转换
- 不可变集合
- 序列
- 针对序列的内置函数
数据类型
简单数据类型
整型 (INT)
浮点型 (FLOAT)
布尔型 (BOOL)
容器数据类型
列表 (LIST)
元组 (TUPLE)
字典 (DICT)
集合 (SET)
字符串 (STR)
列表
1.列表的定义
列表为有序集合,没有固定的大小,能够保存任意数量任意类型的python对象
格式: 变量 = [元素1,元素2,元素3,等等]
中括号来绑定元素,逗号用来把元素隔开
2.列表的创建
列表的创建其实就是往一个变量里用中括号塞一堆的数据
示例:
#创建的简单的列表
a = [1,2,3,4,5,6,7]
#我们来打印出这个列表
print(a)
#输出结果为
[1,2,3,4,5,6,7]
#直接打印的话就会打印整个列表,要单个打印就得使用for或while函数来循环打印了
我们也可以使用range方法来创建列表
示例:
#使用range语句创建列表
a = list(range(10))
#记住不管什么时候 range都是取头不取尾的
print(a)
#输出结果
[0,1,2,3,4,5,6,7,8,9]
#range语句的跳步创建列表
b = list(range(0,10,2)
#记住跳步就是每隔指定数,才取一次数据
print(b)
#输出结果
[0,2,4,6,8]
#我们也可以反着来,那么跳步的数也得是负数,而且要反的话必须得有个为负数的跳步
#当然我们写的距离也都得反着写
c = list(range(10,1,-2)
print(c)
#输出结果
[10,8,6,4,2]
我们还可以用推导式来写个列表
示例:
#推导式创建列表
#这个是创建个有五个数据的列表,这五个数据都为0,因为我们括号里放的就是0
a = [0] * 5
print(a, type(a))
#输出结果
[0,0,0,0,0] <class 'list'>
#推导式创建列表2
#和上面那个一样就是换了个方式,但是这样就可以往列表里进行更多的操作了
b = [0 for i in range(5)]
print(b,type(b))
#输出结果
[0,0,0,0,0] <class 'list'>
#推导式创建列表3
#使用range的推导式
c = [i * 2 for i in range(4)]
print(c, type(c))
#输出结果
[0,2,4,6] <class 'list'>
#推导式创建列表4
#使用if来筛选列表内的数据
#下面表示的是只有i取余2不等于0而且i取余3等于0的情况下才会进入列表中
d = [i for i range(10) if (i%2) != 0 and (i%3) ==0]
print(d, type(d))
#输出结果
[3,9]
注意:
由于列表的元素可以是任何类型的对象,所以列表中保存的是对象的指针。就算保存[1,2,3],也是有3个指针和3个整数对象的。
所以在a = [x] * 4的操作中,只是创建了4个指向列表的引用,如果我们的x被改变了,那么a中所有的x都会被改变
示例:
#创建个列表内列表
#这里表示的是我们创建了个3个0的列表,然后再一个大的列表的重复了4次
a = [[0]*3]*4
print(a,type(a))
#输出结果
[[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]] <type 'list'>
#如果现在我们改变一个列表内列表的数据则全部的列表都会被改变
#比如现在想换第一个内列表的第一个数据,下面第一个[]代表的是内列表的位置,第二个则是数据的位置
a[0][0] = 1
print(a)
#但是我们这里一旦改变就会改变所有的列表对应位置的数据
#打印结果
[[1, 0, 0], [1, 0, 0], [1, 0, 0], [1, 0, 0]]
#这个列表的创建还有个方式,是分两部分实现的
#先创建个单列表
b = [0] *3
#在将它反在大列表内循环次数
c = [b] * 4
#打印结果就和上面的一致了
[[0,0,0],[0,0,0],[0,0,0],[0,0,0]] <class 'list'>
创建一个混合的列表
示例:
#混合列表其实就是拥有各种数据类型的一个列表
#但是这样我们只能自定义列表了,而不能使用推导式之类的
a = [1,'a',3.14,[1,2,3]]
print(a)
#结果为
[1,'a',3.14,[1,2,3]
创建空列表
就列表里什么也不放就好了
示例:
# 空列表
a = []
print(type(a))
#结果为
<class 'list'>
3.向列表里添加元素
在列表中我们可以使用append语句在列表末追加元素,不过只接受一个元素ÿ