0420 python学习总结(3)

本文介绍了Python编程中的for循环与range函数的使用,包括等差数列的生成和循环中的求和。接着讲解了while循环的逻辑以及continue和break的用法。文章还涉及列表的查、增、删、改操作,展示了如何在Python中处理和操作数据。
摘要由CSDN通过智能技术生成

0420 python学习总结

一.for循环和range函数

1.for循环

for 变量 in 序列:

​ 循环体

for x in range(100):
    print('hello 甜甜俊俊')

2.range函数 - 创建等差数列

1)range(N) - 创建[0,N)的等差数列,差是1.

range(6):0 1 2 3 4 5

range(11):0 1 2 3 4 5 6 7 8 9 10 11

2)range(M,N) - 创建[M,N)的等差数列,差是1.(注意:M必须小于N

range(5,10):5 6 7 8 9

range(-5,5):-5 -4 -3 -2 -1 0 1 2 3 4

3)9range(M,N,step) - 创建[M,N),差是step的等差数列(step<0时,M>N)

range(2,10,2):2 4 6 8

range(10,2,-2):10 8 6 4

for x in range(90,0,-5):
    print(x)
for geigei in range(10):
    print('姬霓太美')

练习:使用range函数生成以下等差数列

1)0 1 2 3 4 5 6 7 8 9 10

for a in range(11):
    print(a)

2)9 10 11 12 13

for b in range(9,14):
    print(b)

3)7 5 3 1

for c in range(7,0,2):
    print(c)

4)5 4 3 2 1 0

for d in range(5,-1,-1):
    print(d)

5)12 15 18 21

for e in range(12,22,3):
    print(e)

3.累计求和

案例1.求1+2+3+…+100的和

1)定义变量保存最后的和,变量默认是0

sum1 = 0

2)同for循环依次获取需要求和的每一个数据

for x in range(1,101):

3)在循环体中取到一个需要求和的数据,就往结果中加一个值

​ sum1 += x

print(sum1)

案例2.求所有学生的总成绩

scores = [98,80,70,67,55,99,81]
total_score = 0
for x in scores:
    total_score += x
    print(total_score)

练习1:求100+101+102+…+200的结果

nums = 0
for a in range(100,201):
    nums += a
print(nums)

练习2:求nums中所有元素的和

nums = [89,10,22,11,4,8,9]
num = 0
for b in nums:
    num += b
print(num)

练习3:求nums中所有偶数的和

nums = [89,10,22,11,4,8,9]
sum1 = 0
for x % 2 == 0:
    sum1 =+ x
print(sum1)

4.统计个数

案例2:统计100以内所有能被3整除的数的个数

count = 0
for x in range(100):
    if x % 3 == 0:
        count += 1
print(count)

练习:统计nums中奇数的个数

nums = [89,10,22,11,4,8,9]
sum1 = 0
for x in nums:
    if x % 2 !=0:
        sum1 += 1
print(sum1)
    

二.while循环

语法:

while 条件语句:

​ 循环体

执行过程:

先判断条件语句是否成立,如果成立就执行循环体,执行完循环体再判断条件语句是否成立,成立就再执行循环体…以此类推,直到条件语句的结果为Flase整个循环结束。

案例:

使用while循环控制程序打印五次“俊俊爱甜甜”

x = 0
while x < 11:
    print('俊俊爱甜甜')
    x += 1

使用建议:遇到循环问题优先考虑for循环,foe循环解决不了的情况才选择while.

1.continue - 结束一次循环

在循环的时候如果遇到了continue,那么这一次循环结束,直到进入下次循环

for x in range(5):
    print('甜甜')
    continue
    print('俊俊')
    print(99)
for xin range(10):
    if x % 3 == 0:
        continue
    print(x)

x = 0 : if x % 3 == 0 -> if 0 % 3 == 0 -> if Ture:continue(这次循环结束)

x = 1 : if x % 3 == 0 -> if 1 % 3 == 0 -> if False

​ print(x) -> print(1)

x = 2 : if x % 3 == 0 -> if 2 % 3 == 0 -> if False

​ print(x) -> print(2)

x = 3 : if x % 3 == 0 -> if 3 % 3 == 0 -> if Ture:continue(这次循环结束)

x = 4:…

2.break - 结束整个循环

执行循环体的时候如果遇到break,整个循环直接结束(循环体剩下的部分不执行,也不再进入下一次循环)

for x in range(5):
    print('hello')
    break
    print('hhha')
    print(100)

3.当while遇到break

初学者使用while循环的套路

while Ture:

​ 需要重复执行的操作

​ if 循环结束的条件:

​ break

4.使用while循环的场景

1)死循环

2)循环次数不确定的时候:在写代码的时候无法确定循环次数,因为次数由用户行为控制

案例:提示用户输入密码,直到输入正确为止

password = '123456'
while True:
    value = input('请输入密码:')
    if value == password:
        break

练习:写一个猜数字游戏

产生一个0~100的随机数,然后提示用户输入数字。输入错误时给出对应的提示

from random import randint
number = randint(8,108)
print(number)
while True:
    value = int(input('请输入8~108间的一个数'))
    if 8<= value <=108:
        if value == number:
            print('真谢嘞,您终于猜对了!')
            break
        elif number < value:
            print('我求您小点儿成吗?')
        elif number > value:
            print('您能再大点儿嘛?')
    else:
        print("重新输入")

三.列表

结论:如果需要在程序中同时处理多个数据,就可以使用列表

认识列表 - list:

列表是系统数据中容器型数据中的一种

列表是容器,将[]作为容器的标志,里面的多个元素用逗号隔开:[数据1,数据2,数据3,…]

列表是可变的(列表支持增、删、改、查);列表是有序的(顺序影响结果;支持下标操作)

列表的元素:任何类型的数据都可以作为列表的元素,而且同一个列表中元素的类型可以不一样

1.查 - 获取列表元素

1)查单个 - 获取列表中的某一个元素

语法:

列表[下标] - 获取列表中指定下标对应的元素

说明:

列表 - 可以是保存列表的变量,也可以是一个具体的列表

[] - 固定写法

下标 - 列表中的元素在列表中的位置信息

​ 列表中的每个元素都有两个下标值:a.从前往后从0开始不断增加的下标值;b.从后往前从-1不断减小的下标值

nums = [100,200,300,400]
print(nums[2],nums[-2])         #200,300
movies = ['复仇者联盟', '盗梦空间', '怦然心动', '绿皮书', '肖生克的救赎', '触不可及']
print(movies[5])
print(movies[-4])
2) - 一个一个的获取列表中的元素每个元素
movies = ['复仇者联盟', '盗梦空间', '怦然心动', '绿皮书', '肖生克的救赎', '触不可及']
for x in movies:
    print(x)

案例:统计scores中不及格学生的个数

scores = [89, 78, 67, 10, 45, 99, 50]
num=0
for x in scores:
    if x < 60:
        num += 1
print(num)

2.增 - 添加元素

1) 列表.append(元素) - 在列表的最后添加一个元素
movies = ['复仇者联盟', '盗梦空间', '怦然心动', '绿皮书', '肖生克的救赎', '触不可及']
print(movies)

movies.append('泰坦尼克号')   #只能添加在最后
print(movies)

movies.append('三傻大闹宝莱坞')
print(movies)

练习1:提取nums中所有的偶数

nums = [89, 78, 90, 64, 55, 71, 34]
# [78, 90, 64, 34]
new_nums = []
for x in nums:
    if x % 2 == 0:
        new_nums.append(x)
print(new_nums)

练习2:提取nums中所有元素的个位数

nums = [89, 78, 90, 64, 55, 71, 34]
# [9, 8, 0, 4, 5, 1, 4]
new_nums = []
for x in nums:
    new_nums.append(x % 10)
print(new_nums)
2)列表.insert(下标,元素) - 将元素插入到列表中指定下标对应的元素前
movies = ['复仇者联盟', '盗梦空间', '怦然心动', '绿皮书', '肖生克的救赎', '触不可及']
print(movies)

movies.insert(2, '泰坦尼克号')
print(movies)

movies.insert(-1, '恐怖游轮')
print(movies)

3.删 - 删除列表中的某个元素

1)del 列表[下标] - 删除列表中指定下标对应的元素
movies = ['复仇者联盟', '盗梦空间', '怦然心动', '绿皮书', '肖生克的救赎', '触不可及']
print(movies)

del movies[1]
print(movies)
2)列表.remove(元素) - 删除列表中指定元素(如果相同的元素有多个,会删最前面的那一个)
movies = ['复仇者联盟', '盗梦空间', '怦然心动', '绿皮书', '盗梦空间''肖生克的救赎', '触不可及']
print(movies)

movies.remove('盗梦空间')
print(movies)
3)

列表.pop() - 取走列表中的最后一个元素并且返回

列表.pop(下标) - 取走列表中指定下标对应的元素且返回

4.改 - 修改某个元素的值

列表[下标]=新元素 - 修改列表中指定下表对应的元素为新元素

movies = ['复仇者联盟', '盗梦空间', '怦然心动', '绿皮书', '肖生克的救赎', '触不可及']
print(movies)

movies[1]='阿甘正传'
print(movies)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值