Python循环

目录

while循环

​for循环

break

continue


我现在如果要打印一千遍:"I Love Music!",我该怎么做呢?我难道要写1000条print吗?我们可以使用循环语句完成。

while循环

语法:

i = 1
while i <= 10: # 当条件成立就会进入循环,条件不成立跳出循环
    print('I Love Music')
    i += 1 # 如果没有该语句会死循环

计算1-100的累加和

我们可以定义一个变量i,让他从1开始,在定义一个sum,sum每次加上i,然后i进行加1,当i > 100的时候退出循环。

i = 1
sum = 0
while i <= 100:
    sum += i
    i += 1
print(sum)

计算1-100的偶数累加和

只需要加一个判断即可,亦或者i从2开始,每次加等2。

# 方法1
i = 1
sum = 0
while i <= 100:
    if i % 2 == 0:
        sum += i
    i += 1
print(sum)

# 方法2
i = 2
sum = 0
while i <= 100:
    sum += i
    i += 2
print(sum)

打印小星星

# 方式1
i = 1
while i <= 5:
    print('*' * i)
    i+=1

# 方式2
i = 1
while i <= 5: #循环5次
    j = 1
    while j <= i: 
        print('*', end=' ')
        j += 1 
    print() # 默认换行
    i += 1

打印九九乘法表

i = 1
while i <= 9:
    j = 1
    while j <= i:
        print(f'{i} * {j} = {i * j}', end='\t')
        j += 1
    i += 1
    print()

 for循环

range函数

语法:range(start,  end, step),range(1,5,2)范围是左闭右开[1,5),刚开始是1,然后跳跃2步是3,在跳跃2步是5,不包含5,因此结果就是1,3。

返回值:返回一个整数列表,一般用在for循环中。

start:计数的起始值,默认从0开始。

end:计数的结束位置,不包含end。

step:每次跳跃的间距,不填默认为1。

for语法:

这个可迭代对象就是可以通过for依次把里面的元素取出来的对象。

range里面只填一个5,表示返回一个列表,里面的元素是[0-5)。

for i in range(5):
    print(i)

计算1-100求和

sum = 0
for e in range(1, 101):
    sum += e
print(sum)

打印九九乘法表

# 九九乘法表
for row in range(1, 10): # 行数范围1-9
    for col in range(1, row + 1): # 列数范围1-row
        print(f'{row} * {col} = {row * col}', end='\t')
    print()

break

退出当前循环。

for i in range(1, 10):
    if i % 3 == 0:
        break
    print(i)

a = 1
while a < 5:
    print(f'吃了{a}个包子')
    if a == 3:
        print('吃饱了')
        break
    a += 1

 

continue

结束本轮循环,continue后面代码不在执行,继续下一轮。

如果要在while循环中使用continue,一定要小心。

a = 1
while a < 5:
    if a ==  3: # 此时后面代码不执行,继续下一轮,a永远都是3,不会超过5,死循环了
        continue
    print(a)
    a += 1 # 放在这里会死循环

for循环则不会,因为for循环本质是遍历一个可迭代的对象,会依次取出对象里面的值,每次循环都会自动往后走。 


for e in range(1, 6):
    if e == 3:
        continue
    print(e)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值