一、循环与列表
1、for 循环与 range 函数
- for 循环
语法:
for 变量 in 序列:
循环体
说明:
for - 关键字,固定写法
变量名 - 可以是任何变量的变量名
in - 关键字,固定写法
序列 - 任何容器型数据类型的数据;常见的序列:字符串、列表、字典、集合、元 组、 迭代器、生成器、range等
: - 固定写法
循环体 - 结构上,就是和for 保持一个缩进的一条或者多条语句(至少一条)
逻辑上,循环体就是需要重复执行的代码;
补充:元素 - 一个容器同时保存多个数据,其中每一个独立的数据就是这个序列的元素执行过程: - 让变量去序列中取值,依次取值,取完为止,每取一个值就执行一次循环体;
for’循环的次数和序列中元素的个数有关;
-
range 函数 : 创建等差数列
- range( N ) : 创建[ 0 ,N ) 的等差数列,差是1 ;
- range ( M , N ) : 创建[M , N)的等差为 1 的数列;
- range( M , N ,step) : 创建[M, N)的等差数列,差为 step
-
累计求和:
- 案例1:求1+2+3…+100 的和
- 定义变量保存最后的和,变量默认值 为 0;
sum1 = 0 - 通过for循环一次获取需要求和的每一个数据;
- for x in range(x,x):
- 在循环体中取到一个需要求和的数据,就往结果中加一个值;
- sum1 += x
- print(sum1)
求和类型题目中,初始定义一个值为 0 的变量 ,找到循环序列的每一个数据,赋予初始定义的变量中,知道循环结束为止,输出结果
**实例:**练习nums中奇数的个数
nums1 = [89, 10, 22, 11, 4, 8, 9]
count1 = 0
for x in nums1:
if x % 2 != 0:
count1 += 1
print(count1)
2 、while 循环
语法:
while 条件语句:
循环体
执行过程:
先判断条件语句是否成立,如果成立就执行循环体,执行完循环体再判断条件语句是否成立,成立就再执行循环体
以此类推,直到条件语句不成立,就结束循环
3、continue 和 break
continue 和 break 是只能在循环体中使用的关键字
- continue — 结束一次循环
for x in range(10):
if x % 3 == 0:
continue
print(x) # 0-9中所有不能被3整除的数
- break — 结束整个循环
for x in range(1,10):
print(x)
if x % 4 == 2:
break # 1、2
- 初学者使用while的套路
while True :
需要重复执行的操作
if 循环结束的条件
break
- 使用while的场景
- 死循环
- 循环次数不确定,程序员在写代码时,无法确定循环次数,次数由用户行为控制
**案例:**提示用户输入密码,直到输入正确为止;
password = '1234'
while True;
a = input('请输入密码'
if a == password :
break
产生一个0~100 的随机数
from random import randint
numbers = randint(0,100)
print(numbers)
案例: 产生一个0~100的随机数。然后提示用户输入数字,直到输入正确为止;输入错误的时候给出对应的提示。
from random import randint
numbers = randint(0,100)
while True;
a = int(input('请输入一个数:'))
if a > numbers :
print('大了')
elif a < numbers:
print('小了')
else:
print('恭喜你')
break
4、列表
- 认识列表 — list
- 列表时系统类型中容器型数据类型中的一种
- 列表是容器,将【】作为容器的标志,里面多个元素用逗号隔开:【数据1,数据2,、、
- 可变性与可序性:列表是可变的(列表支持增,删,改);列表是有序的(顺序影响结果;支持下标操作)
- 列表的元素:任何类型的数据都可以作为列表的元素,而且同一个列表中元素的类型可以不一样
- 一个列表也可以作为一个列表的元素
**注意:**任何数据都可以是列表的元素;空列表:list[]
- 查
获取单个列表元素
语法: 列表[下标(索引)] - 获取指定列表中指定下标对应的元素 说明; 列表 - 可以是保存列表的变量,也可以是一个具体的列表 [ ] - 固定写法 下标 - 列表中的元素在列表中的位置信息。 列表中的每个元素都有两个下标值:a、从前往后从 0 开始不断增加 b、从后往前 从 -1 开始不断减小
**注意:**填写下标在有限范围内;
- 遍历
一个一个的获取列表中所有的元素
nums = [100,200,300,400]
u = 0
for x in nums:
u += 1
print(x )
-
增 — 添加元素
- 列表.append(元素) — 在列表的最后添加一个元素
- 列表.insert(下标,元素) — 将元素插入指定下标对应的元素前
-
删 — 删除列表中的某个元素
- del 列表 [下标] — 删除列表中下标对应的元素
- 列表.remove(元素) — 删除列表中指定元素
- 列表中存在同一元素重复多次,从前往后删,只删除一个
- 列表.pop() - 取走列表中最后一个元素并且返回
- 列表.pop(下标) - 取走列表中指定下标对应的元素并且返回
-
改 — 修改某个元素的值
- 列表[下标] = 新元素