列表list
一、概念
List(列表) 是 Python 中使用 最频繁 的数据类型,在其他语言中通常叫做 数组
- 列表专门用于存储 一串 信息
- 列表用 [] 定义,数据 之间使用 , 分隔
- 列表的索引从0开始
- 索引 就是数据在 列表 中的位置编号,索引 又可以被称为 下标
![1e2ea15de0efdac9970c88d764370b5b.png](https://i-blog.csdnimg.cn/blog_migrate/605c12398390dc956d93e1d77d63e7f0.jpeg)
二、常用操作
![94669b8b7ee1c70c294d93f4b6461e79.png](https://i-blog.csdnimg.cn/blog_migrate/85646626d5a119fb981e9e7102e2f774.jpeg)
知识点串联:tuple没有增删改,只有查
三、练习题
关卡一:
- 列表和普通变量有什么区别 ?
变量只可以存储单个数据 列表可以存储多个不同类型的数据
- 怎样测量列表中元素的个数?
len
- 怎样获取列表的某个元素
列表[索引]
- 解释一下什么是越界
假如一个列表 list1 = [11,22,33] 三个元素 索引分别是 0、1、2 如果我们在取值时 超出了列表list1中元素下标的范围 那么就会 越界 报出异常 IndexError: list index out of range
- 怎么想列表中添加元素?
append() 、 extend() 、 insert()
- 如何删除列表中的某个元素?
del pop() remove()
关卡二:
已知一个列表 lst = [1,2,3,4,5]
- 求列表的长度
len(list)
- 判断6 是否在列表中
if 6 in lst
- lst + [6, 7, 8] 的结果是什么?
[1,2,3,4,5,6,7,8]
- lst*2 的结果是什么
[1,2,3,4,5,1,2,3,4,5]
- 列表里元素的最大值是多少
max(lst)
- 列表里元素的最小值是多少
min(lst)
- 列表里所有元素的和是多少
sum(lst)
- 在列表的末尾新增一个元素20
lst.append(20)
关卡三:
- 如何修改列表中的某个元素? 直接根据索引来修改
列表[要修改的元素的索引] = 值
- 如何去查找列表中某个元素所对应的下标?
列表.index(元素)
- 已有列表nums=[11,22,33,44,55],使用for循环遍历列表
# 已有列表nums=[11,22,33,44,55],使用for循环遍历列表
nums=[11,22,33,44,55]
for i in nums:
print(i)
- 已有列表nums=[11,22,33,44,55],使用while循环遍历列表
# nums=[11,22,33,44,55],使用while循环遍历列表
nums=[11,22,33,44,55]
i=0
while i <len(nums):
print(nums[i])
i=i+1
- 已有列表nums=[14,22,63,21,5],将其从小到大排序
# 已有列表nums=[14,22,63,21,5],将其从小到大排序
nums=[14,22,63,21,5]
nums.sort()
print(nums)
元组tuple
一、概念
![c3f4927e7e4b291d486a60990add7a29.png](https://i-blog.csdnimg.cn/blog_migrate/56b9cbc2fd223d8fdaae092b0cdd4ea3.png)
point 1:元组具有的不可修改的特性,所以没有 增加、删除、修改 的方法,只有查询功能。但是,如果元组中的元素如果为列表/字典时,则可以修改列表/字典中的元素的值
a = [1, 2]# list
b = (a, 3)
print(b)
a.append(3)
print(b)
输出结果:
([1, 2], 3) ([1, 2, 3], 3)
point 2:元组中 只包含一个元素 时,需要 在元素后面添加逗号,不加就不是元组了
info_tuple = (50, )
print(type(info_tuple))
int_tuple=(50)
print(type(int_tuple))
输出结果:
<class 'tuple'>
<class 'int'>
二、常用操作
![e7e6137850b66ad8e91a8e49a393da23.png](https://i-blog.csdnimg.cn/blog_migrate/13b3902a989f62ef464b98102514bfe5.png)
三、练习题
- 元组定义的格式? 元组用() 定义
- 元组和列表的区别? 元组的元素不能修改
字典Dict
一、概念
字典用 {key:value,...} 定义
- 字典使用键值对(key、value对)存储数据,键值对之间使用,分隔
- 键 key 是索引:注意索引不再是 0,1,2... 了,虽然可以用数字,但是一般使用字符串
- 值 value 是数据
- 键 和 值 之间使用 : 分隔
- 键必须是唯一的:如果有多个,后者会覆盖前者
- 值 可以取任何数据类型,但 键 只能使用 字符串、数字或 元组
xiaoming
- dictionary(字典) 是 除列表以外 Python 之中 最灵活 的数据类型
- 字典同样可以用来存储多个数据
- 通常用于存储 描述一个 物体 的相关信息
- 和列表的区别
- 列表 是 有序 的对象集合
- 字典 是 无序 的对象集合
![e16c2848b20fd675a5ef782f5e5a51d4.png](https://i-blog.csdnimg.cn/blog_migrate/5b722b0abcf6f773a63507e89c2bc56c.jpeg)
二、常用操作
![cc9ee6e19595193fae5afef7fd714b55.png](https://i-blog.csdnimg.cn/blog_migrate/07f02a90d821f0928a9e05db2f98bca1.jpeg)
三、练习题
(1)
string = "hello python"
#使用for循环,遍历string中每个字符
for i in string:
print(i)
(2)
- 字典和列表的不同以及使用字典的目的
字典是以键值对的形式来存储数据的,字典是无序的,通过键获取到对应值列表是有序的,通过下标来获取值使用字典可以存储一些有标识性的数据,可以为数据起一个特定的名字
- 创建一个字典 user 键分别是 name、age、gender 值分别是张三、18、男
user = {“name”:“张三”, "age":18, "gender":"男"}
- 怎么去取得字典中所有的key?
字典.keys()
- 怎么去取得字典中所有的value?
字典.values()
- 怎么去获得字典中所有key、valuue?
字典.items()
- 说出字典删除操作的几种方式?
del 字典[key]
字典.pop("key")
字典.popitem()
字典.clear()
- 编程:使用字典来存储一个人的信息(姓名、年龄、学号、QQ、微信、住址等),这些信息来自 键盘的输入
![f2798527a2905afbfb7c3c52a09cda3a.png](https://i-blog.csdnimg.cn/blog_migrate/2b647cb2053ac5e92bb89f72ce079e4d.jpeg)
字符串String
一、概念
- 字符串 就是 一串字符,是编程语言中表示文本的数据类型
- 在 Python 中可以使用一对双引号"或者一对单引号'定义一个字符串
- 虽然可以使用"或者'做字符串的转义,但是在实际开发中:
- 如果字符串内部需要使用 ",可以使用 ' 定义字符串
- 如果字符串内部需要使用 ',可以使用 " 定义字符串
- 虽然可以使用"或者'做字符串的转义,但是在实际开发中:
- 可以使用 索引 获取一个字符串中 指定位置的字符,索引计数从 0 开始
- 也可以使用 for 循环遍历 字符串中每一个字符
string = "hello python"
#使用for循环,遍历string中每个字符
for i in string:
print(i)
output:
h
e
l
l
o
p
y
t
h
o
n
![e5d83594545cb8572b1aa0b1da190a15.png](https://i-blog.csdnimg.cn/blog_migrate/4e6bd8759980130e4880f3ce808e35c7.png)
二、常用操作
1) 判断
![ce00116bbd355a7728c0f209e47fb35e.png](https://i-blog.csdnimg.cn/blog_migrate/06ac3e9df81d9bd41054fe1d5d70a9d2.jpeg)
2) 查找和替换
![4b13a37415f823ba9d65aaa091206e17.png](https://i-blog.csdnimg.cn/blog_migrate/0a77081a99bb8fe536e8abcafa125268.jpeg)
3) 拆分和连接
![bf78a52de41bbbe9faf37a0cb7e2acfa.png](https://i-blog.csdnimg.cn/blog_migrate/26019ba23044e3ff3d808a1d670470b0.jpeg)
4) 大小写转换
![28ff618da4f0597969955d2669ea225f.png](https://i-blog.csdnimg.cn/blog_migrate/08d4c860238d0035779c0021833214da.png)
5) 文本对齐
![51f041661d53729979b36a68e6d502b2.png](https://i-blog.csdnimg.cn/blog_migrate/c340496f53530de599806e103e5613ee.png)
6) 去除空白字符
![2e69ac2e9a8a7487d781692c0f1b287f.png](https://i-blog.csdnimg.cn/blog_migrate/a96f51f8cf3f5778b3afb39c8cb2e3a8.png)
提示:列表除了查询方法和pop方法都没有返回值,字符串所有方法都有返回值
三、切片(切片方法适用于字符串string、列表list、元组tuple)
1. 基础概念
![1353ea3d47074fb90e135eb7b6349bc3.png](https://i-blog.csdnimg.cn/blog_migrate/cbc58b32761417384aced887cc3be68c.png)
字符串[开始索引:结束索引:步长]
——左闭右开
2. 练习题
(1)
# 截取从 2 ~ 5 位置 的字符串
print(string[2:6])
# 截取从 2 ~ 末尾 的字符串
print(string[2:])
# 截取从 开始 ~ 5 位置 的字符串
print(string[:6])
# 截取完整的字符串
print(string[:])
# 从开始位置,每隔一个字符截取字符串
print(string[::2])
# 从索引 1 开始,每隔一个取一个
print(string[1::2])
# 截取从 2 ~ 末尾 - 1 的字符串
print(string[2:-1])
# 截取字符串末尾两个字符
print(string[-2:])
# 字符串的逆序(面试题)**************
print(string[::-1])
(2)
- python中字符串的组成及表示规则是怎样的?
由单引号或者双引号包含起来的就是字符串
- 如何理解下标,怎么使用下标来获取字符串中的某个字符?
字符串、列表等都是有序的,下标相当于他们的位置,从左往右,从0开始起算
可以使用下标来获取字符串中的某个字符,比如
str1 = “haha” str1[0] -----》 h
- 如何理解切片,怎么使用切片来获取字符串中的一些字符?
切片可以通过下标对字符串做截取,用法
[起始位置下标:结束位置:步长]
左闭右开。
步长如果是负数,意味着从右往左;
步长如果是正数,意味着从左往右步长默认为1
- 怎样判断一个变量是否是字符串类型?
type(变量名)
- 怎样测得字符的长度?
len(字符串)
- 有"100"和100,它们有什么区别么??
“100” 是字符串 str100 是整数 int
- 怎样将"100"转换为100?
int("100") -----> 100
- 字典和列表的不同以及使用字典的目的
字典是以键值对的形式来存储数据的,字典是无序的,通过键获取到对应值列表是有序的,通过下标来获取值使用字典可以存储一些有标识性的数据,可以为数据起一个特定的名字