01.数字类型。
- python中数字相关的类型有4种: int(整型)、 float(浮点型)、 complex(复数)
bool(布尔)
1.int(整型) -
- 所有的整数对应的类型。
- 类型转换:
print(int(2.34)) # 2
print(int(1.999)) # 1
print(int(-2.4)) # -2(浮点数转换成整数的时候只是单纯的保存整数部分)
print(int(10 + 3j)) # can't conver complex to int (复数不能转换成int类型)
print(int(True)) # 1
print(int(False)) # 0
print(int('abc')) #不能转换
print(int('12.5')) #不能转换,小数不行
print(int('34')) # 34
print(int('-120')) # 120
print(int('0b110')) # 不能转换,默认的是10进制
print(int('0b110', base=2)) # 6(base控制的是进制,默认为10)
2.float(浮点型)
- 所有小数对应的类型。
- 类型转换
print(float(19)) # 19.0
print(float(3+4j)) # 复数不行
print(float(True)) # 1.0,布尔可以
print(float('12b23')) # 不行字符串不一定可以。
print(float('12.8')) # 12.8小数可以
print(float('2e8')) # 科学计数法表示的字符串可以
3.complex(复数)
- 由实部和虚部组成的数字就是复数(虚数单位是J)
- 类型转换
print(complex(10)) # (10+0j)
4.bool(布尔)
- 只有True和False两个值True本质是1,False就是0
- 类型转换(所有类型的数据都可以转换成布尔)
所有的0值和空值都会转换成False,其他都是True.
02列表基础
1.什么是列表。
-
列表是容器型数据类型,以[]作为容器的标志,里面用多个逗号隔开。
[列表1, 列表2, 列表3,…] -
列表是有序的、可变的(元素的个数、值、顺序可变)
-
列表中的元素可以是任何类型的数据,同一个列表可以有多个不同类型的元素。
list1 = [34, 'abc', True, 38]
print(list1)
girl_friends = ['杨幂', '林志玲', '刘亦菲', '']
empty = [] # 空列表
2.获取列表元素
1).获取单个元素
- a.语法:
列表[下标] - 获取列表中指定下标对应的元素
-
b.说明
- 列表 - 任何结果是列表的表达式,比如:具体的列表值,保存列表的变量,运算结果是列表的运算表达式,返回值是列表的函数调用表达式
- [] - 固定写法
- 下标 - 又叫索引,表示元素在有序序列中的位置信息。
-python中下标值有两种
1).0~长度-1,其中0表示第一个元素的位置、1就是第二个
元素的位置,以此类推…(易错:注意第一个元素下标是0,最后一个下标是长度-1,很容易弄错要注意。)
2)-1 ~ - 长度,其中-1表示
最后一个元素的位置,-2就是倒数第二个元素的位置,以此类推…
-
例题
scores = [90, 78, 59, 76, 84] print(scores[1]) print(scores[4]) # 注意84在序列中是第五个,但 #是他的下标是4.因为从0开始。
2).遍历列表
- 将列表中的数据一个一个的取出来。
- 方式一:(直接获取列表中的元素)
for 变量 in 列表:
循环体
- 方式二:(同时获取元素的下标和值)
for 下标,元素 in enumerate(列表名):
循环体
3).获取部分元素(切片)
- 列表切片的结果还是列表
- 语法:
1)列表[开始下标:结束下标:步长] - 从开始下标开始取,每次下标值增加长去取下一个值,到结束下标前为止。(这个是本质原理)
2)如果步长为正:表示开始下标到结束下标是从前往后取,开始下标对应位置要在结束下标位置的前面才能取到值。
3)如果步长为负:表示开始下标到结束下标是从后往前取,开始下标对应位置要在结束下标位置的后面才能取到值。
names = ['赵云', '诸葛亮', '刘备', '貂蝉', '甄姬']
print(names[1:4:1]) # ['诸葛亮', '刘备', '貂蝉']
print(names[1:4:-1]) # []
print(names[1:4:2]) #[诸葛亮,貂蝉]
4)省略步长:
列表[开始下标:结束下标] - 省略步长就相当于步长是1; 列表[开始下标:结束下标:1]
movies = ['僵尸世界大战', '电锯惊魂', '致命弯道','死神来了', '生化危机', '林中小屋']
print(movies[1:-1]) # ['电锯惊魂', '致命弯道','死神来了', '生化危机']
- 省略开始下标:
列表[:结束下标:步长]或者列表[:结束下标] - 如果步长为正,表示从第一个元素开始往后取;如果步长为负,表示从最后一个元素开始往前取。(重点)
print(movies[:-2]) # ['僵尸世界大战', '电锯惊魂', '致命弯道','死神来了'],步长为1可以省略
6)省略结束下标
列表[开始下标::步长]或者列表[开始下标:] - 如果步长为正,从前往后取到最后一个元素为止
如果步长为负,从后往前取到第一个元素为止。
7)开始下标和结束下标都省
列表[::步长]或者列表[:] - 如果步长为正,从前往后从第一个元素取到最后一个元素
如果步长是负,从后往前取从最后一个元素取到第一个元素