1.整数和小数

1.1基本数据类型

数据类型指的就是变量的值的类型,也就是可以为变量赋哪些值

1.2整数和小数

整数 : 所有整数 例如 : a = 1 b = 100 c =999 都是int类型

小数常量 : 所有小数 例如 a = 1.2 b=6.66 用float类型表示

2.布尔值和空值

2.1布尔和空值

None常量:只有一个数值就是None 也就是空值

3.字符串

3.1什么是字符串

字符串是由数字、字母、下划线组成的一串字符

注意:

单引号或双引号不能混合使用

Python中用一对双引号或者一对单引号包裹的内容就是字符串

3.2转义字符

转义字符是一种特殊的字符常量。转义字符以反斜线""开头,后跟一个或几个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”字符

总结

\t 表示制表符 一个制表符等于四个空格

\n 表示行⾏符

\\ 表示反斜杠

\’ 表示 ’ 单引号

\ ‘’ 表示 ‘’ 双引号

3.3长字符串

长字符串 又叫做文档字符串 我们使用三重引号来表示一个长字符串’’’ ‘’’

三重引号可以换行,并且会保留字符串中的格式

3.4格式化字符串

第一种格式化字符串 拼串

第二种格式化字符串 参数传递

第三种格式化字符串 占位符

%s 字符串占位 %f 浮点数占位 %d 整数占位

第四种格式化字符串 f’{变量}’

str.format ()

3.5字符串的其他操作

len() 字符串的长度

max() 最大值

min() 最小值

split()分割字符串

join()拼接字符串

find()查找字符串

replace() 替换字符串

partition() 把字符串分割为三部分

去空格

s.strip() 左右两边去空格

s.lstrip() 去左边空格

s.rstrip() 去右边空格

字符串大小写

s.upper() 全部大写

s.lower() 全部小写

s.isupper() 判断是不是大写

s.islower() 判断是不是小写

4.列表

4.1基本概念

序列是Python中最基本的⼀种数据结构。序列用于保存一组有序的数据,所有的数据在序列当中都有一个唯一的位置(索引)并且序列中的数据会按照添加的顺序来分配索引

数据结构指计算机中数据存储的方式

4.2序列的分类

可变序列(序列中的元素可以改变):例如 列表(list)

不可变序列(序列中的元素不能改变):例如 字符串(str)元组(tuple)

4.3列表的作用

列表中可以保存多个有序的数据

列表是用来存储对象的对象

4.4列表的使用

列表的创建:

通过[]来创建一个空列表切片

切片是指从现有列表中获得一个子列表

通过切片来获取指定的元素

语法: 列表[起始 : 结束 :> 步长]

通过切片获取元素时,会包括起始位置的元素,不会包括结束位置的元素

起始位置和结束位置的索引可以不写

如果省略结束位置, 则会从当前的开始位置一直截取到最后

如果省略开始位置, 则会从第一个元素截取到结束的元素,但是不包括结束的元素

如果开始位置和结束位置都省略, 则则会从第一个元素开始截取到最后一个元素

步长表示每次获取元素的间隔,默认是1(可以省略不写)

步长不能是0,但可以是是负数

4.5通用操作

. + 和 *

可以将两个列表拼接成一个列表

可以将列表重复指定的次数 (注意2个列表不能够做乘法,要和整数做乘法运算)

in 和 not in

in⽤来检查指定元素是否在列表当中

not in 用来检查指定元素是否不在列表当中

len() 获取列表中元素的个数

max() 获取列表中最大值

min() 获取列表中最小值

list.index(x[, start[, end]])

第一个参数 获取指定元素在列表中的位置

第二个参数 表示查找的起始位置

第三个参数 表示查找的结束位置

list.count(x) 统计指定元素在列表中出现的个数

4.6修改列表

通过切片来修改(起始就是给切片的内容重新赋值,但是赋值的内容必须是一个序列)

当设置了步长时,序列中元素的个数必须和切片中元素的个数保持一致 通过切片来删除元素

del list[起始 : 结束]

list = []

4.7列表的方法

append() 像列表的最后添加一个元素

insert(arg1,arg2) 像列表指定位置插入一个元素 参数1:要插⼊的位置 参数

2:要插⼊的元素

extend( iterable ) 使用一个新的序列来扩展当前序列(它会将该序列的中元素添加到列表中) 参数需要传递一个序列

pop() 根据索引删除并返回指定元素

remove() 删除指定元素 (如果相同值的元素有多个,只会删除第一个)

reverse() 翻转列表

sort(key=None,reverse=False) 用来对列表中的元素进⾏排序 reverse:True反序;False 正序

5.元组

5.1元组简介

元组表现形式tuple

元组是一个不可变序列(一般当我们希望数据不改变时,我们使用元组,其他情况下基本都用列表)

使用()创建元素

元组不是空元组至少有一个 逗号(,) 当元组不是空元组时括号可以省略

元组解包指将元组当中的每一个元素都赋值给一个变量

6.字典

6.1字典的基本介绍

字典属于一种新的数据结构称为映射(mapping)

字典的作用和列表类似,都是用来存储对象的容器

列表存储数据的性能好,但是查询数据的性能差,字典正好与之相反

在字典中每一个元素都有唯一的名字,通过这个唯一的名字可以找到指定的元素

这个唯一的名字我们称之为key 通过key可以快速查询value 也可以称之为值 字典我们也称之为键值对(key-value)结构

每个字典中都可以有多个键值对,而每一个键值对我们称其为一项(item) 创建一个有数据的字典 语法 {key:value}

字典的值可以是任意对象 字典的键可以是任意的不可变对象(int str bool tuple…)

字典的键是不能重复的,如果出现重复的后⾯的会替换前面的

6.2字典的使用

dict()函数来创建字典

get(key[,default]) 根据键来获取字典的值。第⼆个参数可以指定一个默认值,当获取不到值的时候会返回默认值

update()将其他字典的key-value添加到当前的字典当中

del 删除字典中的key-value

popitem()删除字典最后的一个key-value 这个方法是有返回值的。删除之 后它会将删除的key-value作为返回值返回

pop(key[,default]) 根据key删除⾃定中的value。第而个参数可以指定一个 默认值,当获取不到值的时候会返回默认值

copy() 方法用来对字典进行潜复制

注意:潜复制只会复制字典本身,如果字典中还有个字典是不会进行复制的

6.3遍历字典

我们主要可以通过3种⽅式对字典进行遍历

keys() 该方法返回字典所有的key

values() 该方法返回⼀个序列 序列中保存有字典的值

items() 该方法会返回字典中所有的项 它返回⼀个序列,序列中包含有双值子序列 双值分别是 字典中的key和value

7.集合

7.1集合简介

集合表现形式set 集合和列表非常相似

不同点

集合只能存储不可变对象

集合中存储的对象是无序的

集合不能出现重复元素

使用[]来创建集合

可以通过set()来将序列和字典转换成集合

len() 使用len()来获取集合中元素的数量

add()像集合中添加元素

update()将一个集合中的元素添加到另一个集合当中

pop()随机删除集合中的一个元素一般是删除最后一个元素

remove() 删除集合中指定的元素

clear() 清空集合

7.2集合的运算

& 交集运算

| 并集运算

差集运算

^ 亦或集

<= 检查一个集合是否是另一个集合的子集

< 检查一个集合是否是另一个集合的真子集

=检查一个集合是否是另一个集合的超集

检查一个集合是否是另一个集合的真超集

总结

f’'方法格式化字符串的书写

1 a = '江疏影'

2 b = '林志玲姐姐'

3 print(f'hello, {a}, {b}')

#输出结果是: hello 江疏影 林志玲姐姐

字符串可以随机输出打印吗?

1 import random

2 list1 = ['刘亦菲', '薛之谦', '周杰伦','江疏影']

3 s = random.randint(0, 3) #随机取列表中0-3中的一个字符串

4 print('我喜欢你', list1[s])

格式化浮点型数据的时候怎么让它精确小数位

1 f = 3.1415926

2 print('%.3f'%f) #精确到小数点后面第三位 且向上取值

3 输出结果:3.142

深拷贝和浅拷贝的区别

浅拷贝

1 list1 = [1, 2, 3, 4, [1, 2, 3, 4]]

2 list2 = list1.copy()

3 print('list1', id(list1))

4 print('list2', id(list2))

5

6 print('list1第二层数据,' id(list1[4]))

7 print('list2第二层数据', id(list2[4]))

8

9 打印结果:

10 list1 2262290056712

11 list2 2262289232584

12 list1第二层数据2262290055752

13 list2第二层数据2262290055752

深拷贝是全部拷贝

1 import copy

2 list1 = [1, 2, 3, 4, [1, 2, 3, 4]]

3 list2 = copy.deepcopy(list1)

4 print('list1', id(list1))

5 print('list2', id(list2))

6

7 print('list1第二层数据,' id(list1[4]))

8 print('list2第二层数剧', id(list2[4]))

9

10 打印结果:

11 list1 1608854264712

12 list2 1608854388936

13 list1第二层数据 1608854264520

14 list2第二层数据 160885438887

看完点个赞吧,喜欢的可以点个关注!