day 3 note for循环 和 while

本文详细介绍了Python中的for循环和while循环的语法和使用方法,包括range函数的应用,并提供了三个实践练习,如计算1到100的和,统计1000以内能被3整除的数的个数,以及打印3的倍数且个位为2的数。同时,讨论了在不同场景下选择for循环和while循环的策略。
摘要由CSDN通过智能技术生成

day 3 note for循环 和 while

01. for循环

1. for循环 (让代码重复执行)

语法:
for 变量 in 序列:
循环体

说明:
1) for - 关键字;固定写法
2) 变量 - 和定义变量的时候变量名的要求和规范一样(如果这个变量在循环体中不使用,变量名可以用_代替)
3) in - 关键字:固定写法
4) 序列 - python中容器型数据类型,例如:字符串、列表、元组、集合、字典、迭代器、生成器、range等…
5) 冒号 : - 固定写法
6) 循环体 - 和for保持一个缩进的一条或者多条语句;需要重复执行的代码

执行过程:
让变量去序列中取值,一个一个的取,取完为止,每取一个值就执行一次循环体。
(for循环的执行次数,看序列中元素的个数)

for x in ' a b c ':
    print(x, 'hello world!')

2. range函数 - 产生指定范围的数字序列

(1). range(N) - 产生一个[0, N) 的数字序列(N是正整数);例如:range(4) - 产生 0、1、2、3 的数字序列

for x in range(4):
    print('x1:',  x)

(2). range(M, N) - 产生一个[M, N) 的数字序列(M<N,并且M和N是整数);例如:range(-3, 3) - 产生: -3、-2、-1、0、1、2

for x in range(-3, 3):
    print('x2:', x)

(3) range(M, N, step) - 产生一个[M, N)的数字序列,每次数值增加step;例如:range(-3, 3, 2) - 产生:-3、-1、1

for x in range(-3, 3, 2):
    print('x3:', x)


练习1: 计算1+2+3+4+...+100的和

sum1 = 0
for x in range(1, 101):
    sum1 += x
print('和:', sum1)

"""
sum1 = 0
(x -> 1 ~ 100)
x = 1: sum1 += x -> sum1 = sum1 + x  -> sum1 = 0 + 1 = 1
x = 2: sum1 += x -> sum1 = sum1 + x  -> sum1 = 1 + 2
x = 3: sum1 += x -> sum1 = sum1 + x  -> sum1 = 1+2 + 3
x = 4: sum1 = 1+2+3+4
....
x = 100:  sum1 = 1+2+3+4+...+ 100

print(sum1) -> print(5050)
"""

练习2:统计1000以内能够被3整除的数的个数

方法一:

count = 0   # 保存最终的个数
for x in range(1000):
    if x % 3 == 0:
        count += 1
print('个数:', count)

方法二:

count = 0
for x in range(0, 1000, 3):
    count += 1
print('个数:', count)

练习3:打印1000以内能够被3整除并且个位数是2的所有的数

方法一:

for x in range(1000):
    if x % 3 == 0 and x % 10 == 2:
        print(x, end=' ')
print()

方法二:先生成1000以内所有3的倍数,然后再看3的倍数中谁的个位数是2

for x in range(0, 1000, 3):
    if x % 10 == 2:
        print(x, end=' ')
print()

方法三:先生成1000以内所有个位数是2的数,然后再看个位数是2的数中谁可以被3整除

2 12  22  32  42 52 ... 92 102  112 ...

for x in range(2, 1000, 10):
    if x % 3 == 0:
        print(x, end=' ')
print()

02. while循环

1.while 循环 ( 让代码重复执行 )

语法:
while 条件语句:
循环体

说明:
1)while - 关键字;固定写法
2 条件语句 - 任何有结果的表达式都可以(赋值语句不行)
3 冒号 : - 固定写法
4 循环体 - 和while保持一个缩进的一条或者多条语句;需要重复执行的代码

执行过程:
先判断条件语句是否为True, 如果是就执行循环体,执行完再判断条件语句是否为True;
为True又执行循环体,执行完再判断条件语句是否为True …
以此类推, 如果条件语句的结果是False循环就结束

练习:打印5'hello world!'

x = 0
while x < 5:
    print('hello world!')
    x += 1

"""
x = 0
while 0 < 5: print('hello world!'); x += 1 -> x = 0+1 = 1
while 1 < 5: print('hello world!'); x += 1 -> x = 1+1 = 2
while 2 < 5: print('hello world!'); x += 1 -> x = 2+1 = 3
while 3 < 5: print('hello world!'); x += 1 -> x = 3+1 = 4
while 4 < 5: print('hello world!'); x += 1 -> x = 4+1 = 5
while 5 < 5: 循环结束!
"""

2.for循环和while循环的选择

如果循环次数确定的就使用for循环; 如果循环次数不确定就使用while循环

练习:写程序让客户不断输入内容,直到输入的内容是0为止

input('请输入:')

value = 'start'

while value != '0':

value = input('请输入:')


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值