一.while循环和for循环
while 循环是 Python 中的一种循环结构,用于在某个条件为真(True)的情况下重复执行一段代码。它的基本语法如下:
while 条件:
循环体代码
for 循环是 Python 中用来遍历序列(如列表、元组、字典、集合或字符串)的一种控制流语句。
基本语法:
for 变量 in 可迭代对象:
循环体
1.while循环之打印9*9乘法表
i = 1
while i <= 9:
j = 1
while j <= i:
print(f"{i} * {j} = {i*j}\t",end = " ")
j += 1
i += 1
print("")
end = " ",可以让内层循环不换行,\t制表符可以让对齐文本,但前提是列宽相近或固定。如果字符串长度不一致,可能对齐效果会有偏差
一定要注意空格缩进!!!!
2.for循环之打印9*9乘法表
for i in range(1,10):
for j in range(1, i+1):
print(f"{i}*{j}={i*j}\t",end="")
print()
这个和上面while循环差不多
二.数据容器入门
1.列表
列表(list) 是一种内建的数据结构,用于存储有序、可变、可重复的元素集合。
有序是指下标索引,可变是指可以增删改,可重复就是可以有重复的元素
定义列表的方法
# 定义一个空列表
my_list = []
# 定义一个包含元素的列表
numbers = [1, 2, 3, 4, 5]
# 列表可以储存不同的数据类型
mixed = [1, "hello", 3.14, True]
# 列表可以嵌套列表
nested = [1, [2, 3], 4]
列表的常用操作方法
| 方法 | 说明 | 示例 |
| append() | 在末尾添加一个元素 | my_list.append(6) |
| extend() | 在末尾添加另一个可迭代对象的所有元素 | my_list.extend([7,8]) |
| insert() | 在指定位置插入元素 | my_list.insert(2, 99) |
| remove() | 删除第一个出现的指定值 | my_list.remove(3) |
| pop() | 删除并返回指定位置的元素,默认是最后一个 | my_list.pop() |
| clear() | 清空整个列表 | my_list.clear() |
| index() | 返回某元素首次出现的索引 | my_list.index(4) |
| count() | 某元素在列表中出现的次数 | my_list.count(2) |
| sort() | 原地排序(默认升序) | my_list.sort() |
| sort(reverse=True) | 降序排序 | my_list.sort(reverse=True) |
| reverse() | 反转列表排序 | my_list.reverse() |
列表方法中部分方法代码实现:
list1 = [21,22,35,94,26,48,26]
# 追加一个值,到列表的尾部
list1.append(31)
print(list1)
# 追加一个列表到列表的尾部
list1.extend([1,2,3])
print(list1)
# 取出第一个元素
a = list1[0]
print(a)
# 取出最后一个元素
b = list1[-1]
print(b)
# 查找某一个元素在列表中的位置
c = list1.index(26)
print(c)
# 在指定位置插入元素
list1.insert(1,45)
print(list1)
# 删除第一个出现的指定值
list1.remove(35)
print(list1)
# 降序排序
list1.sort(reverse=True)
print(list1)
2.元组
元组定义:定义元组使用小括号,且逗号隔开每个数据,数据可以是不同的数据类型
多数性质和list一致,不同点在于不可修改的特性
# 一般形式
t1 = (1, 2, 3)
# 省略括号
t2 = 1, 2, 3
# 单个元素的元组,必须加逗号
t3 = (1,) # 正确
t4 = (1) # 实际上是一个整数,不是元组
列表可以修改,但元组不可以修改。
虽然元组不可以修改,但是元组可以嵌套,当你在元组里面嵌套一个列表时,可以修改元组里的列表的内容
t1 = (1, 2, [3,4,5])
# 给元组中的列表的末尾增加一个值
t1[2].append(6)
print(t1)
# 修改元组列表中的值
t1[2][0] = 18
t1[2][1] = 18
t1[2][2] = 18
t1[2][3] = 18
print(t1)
| 方法 | 说明 | 示例 |
| index() | 返回元素x第一次出现的索引位置,如果没有会报错 | t.index(2) |
| count() | 返回元素x在元组中出现的次数 | t.count(3) |
| len() | 统计元组中元素的数量 | len(t) |
3.字符串
字符串的定义:在 Python 中,字符串(str)是一种序列类型的数据容器,它是不可变的(immutable),用来存储字符的有序集合。
特点:
1.只能存储字符串
2.不可以修改,这里的不可以修改说的是先前定义的字符串是不变的,虽然能对字符串修改,但是是生成了一个新的字符串去存储字符
| 方法 | 说明 | 示例 |
| len() | 返回字符串长度 | len(s) |
| s[x] | 获取字符 | s[0],s[1] |
| index() | 找到字串位置,找不到会抛出异常 | s.index("ab") |
| lower() | 转小写 | s.lower() |
| upper() | 转大写 | s.upper() |
| strip() | 去掉俩端空白,当strip("xx")有俩个字符时,可以把俩端的字符一个一个去掉(这个字符串的俩端,必须头尾都是xx,否则修改不了),但要记住先前定义的字符串没有被修改,你需要定义一个新的字符串,去查看这个值 | s.strip() |
| replace() | 替换字串 | s.replace("hello","world") |
| split() | 分割为列表 | s.split(",") |
| count() | 统计某个字符或字符串在原字符串中出现的次数 | s.count("w") |
部分方法的演示:
str1 = "321 csew fwhiu we12"
# strip是去除首尾空格,但也可以去除首尾的其他字符
str2 = str1.strip("12")
print(str2)
# 统计某个字符或子字符串在原字符串中出现的次数
num = str1.count("w")
print(num)
# 将原字符串中的空格转化成|
str3 = str1.replace("|"," ")
# 通过空格分割,把原字符串转化成一个列表
list1 = str1.split(" ")
print(str3)
print(list1)
4.集合
集合的定义:
在 Python 中,集合(Set) 是一种无序、不重复的数据集合。它主要用于去重、关系测试(交集、并集、差集等)等场景。
特点:
1.不允许有重复元素
2.无序(不支持下标索引)所以可以用for遍历,但是不能用while遍历
定义方式:
my_set = {元素,元素,元素}
# 空集合
my_set1 = set()
| 集合.add(元素) | 向集合内添加一个元素 |
| 集合.remove(元素) | 移除集合nei指定的元素 |
| 集合.pop() | 从集合中随机取出一个元素 |
| 集合.clear() | 将集合清空 |
| 集合1.difference(集合2) | 得到一个新集合,新集合中只包含集合1中有的,但集合2中没有,并且原有的俩个集合内容不变 |
| 集合1.difference_uppdate(集合2) | 在集合1中删除集合2中存在的元素,集合1会被修改,但集合2不会 |
| 集合1.union(集合2) | 俩个集合合并成一个 |
| len(集合) | 记录集合里元素的数量 |
5.字典
定义:在 Python 中,字典(dict) 是一种键值对(key-value)的数据结构,常用于存储和快速查找数据。键必须是不可变类型(如字符串、数字、元组),而值可以是任意类型。
特点:
1.键唯一,不可重复,重复 的话,会被后面的覆盖
2.无序,不能用索引取值,所以不支持while遍历
3.键必须是不可变类型,值可以是任意类型(键不可为字典)
字典的定义语法:
# 定义字典变量
my_dict = {key : value, key : value, key : value}
# 定义空字典
my_dict = {} #因为{}这个符号被字典占了,所以空集合只能set()
my_dict = dict()
| 操作 | 说明 |
| 字典[key] | 获取指定key对应的value值 |
| 字典[key]=value | 添加或更新键值对 |
| 字典.pop(key) | 取出key对应的value值,并在字典内删除此key的键值对 |
| 字典.clear | 清空字典 |
| 字典.keys() | 获取字典全部的key,可用于for循环遍历字典 |
| len(字典) | 计算字典中元素的数量 |
6.总结五种不同的数据容器
| 列表 | 元组 | 字符串 | 集合 | 字典 | |
| 元素数量 | 都可以有多个元素 | ||||
| 元素类型 | 任意 | 任意 | 仅字符 | 任意 | key不能是字典,其他任意 |
| 下标索引 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| 重复元素 | 支持 | 支持 | 支持 | 不支持 | 不支持 |
| 可修改性 | 支持 | 不支持 | 不支持 | 支持 | 支持 |
| 数据有序 | 是 | 是 | 是 | 否 | 否 |
| 使用场景 |
可修改,可重复的一 批数据记录场景 |
不可修改,可重复的一 批数据的记录场景 | 一串字符串的场景 | 不可重复的数据记录场景 | 以key检索value的数据记录场景 |
| 功能 | 描述 |
| 通用for循环 | 遍历字典(字典是遍历key) |
| max() | 容器内最大元素 |
| min() | 容器内最小元素 |
| len() | 容器元素个数 |
| list() | 转换为列表 |
| tuple() | 转换为元组 |
| str() |
转换为字符串 |
| set() | 转换为集合 |
| sorted(序列,[reverse=True] |
排序,reverse=True表示降序 得到一个排好序的列表 |

1978

被折叠的 条评论
为什么被折叠?



