Python中循环语句

while语法

while 判断条件:
    执行语句……
else:
	执行语句……

while相关示例

  • while的基本用法
num = [2, 3, 41, 2, 432, 54, 23, 4]
odd = []  # 奇数
even = []  # 偶数
while len(num) > 0:
    newNum = num.pop()
    if newNum % 2 == 0:
        even.append(newNum)
        print(even)
    else:
        odd.append(newNum)
        print(odd)
else:
    print("循环结束")
for i in range(0,len(even)):
    print("偶数有:%s" %(even[i]))
for i in range(0,len(odd)):
    print("奇数有:%d" % (odd[i]))

测试结果:
在这里插入图片描述

  • 分别打印左上三角、右上三角、左下三角、右下三角。
#右上三角
row = 1
while row <= 5:
    col = 1
    while col <= row:
        print('*', end='')
        col += 1
    print('')
    row += 1

结果:
在这里插入图片描述

row = 0
while row <= 5:
    col = 0
    while col < 5-row:
        col += 1
        print(' ',end= '')
    while col < 5:
        print('*',end='')
        col += 1
    print()
    row += 1

结果:
在这里插入图片描述

#右上三角
row = 5
while row >= 1:
    col = 1
    while row >= col:
        print('*',end='')
        col += 1
    print('')
    row -=1

结果:
在这里插入图片描述

#右下三角
row = 0
while row <= 5:
    col = 0
    while col < row:
        col += 1
        print(' ',end= '')
    while col >= row and col < 5:
        print('*',end='')
        col += 1
    print()
    row += 1

结果:
在这里插入图片描述

for语法

  • Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
for iterating_var in sequence:
	statements(s)
  • 通过序列索引迭代:另外一种执行循环的遍历方式是通过索引
for i in range(len(s)):
	statements

注意: range的参数含义

range(stop): 0 ~ stop-1
range(start,stop): start ~ stop-1
range(start,stop,step): start ~ stop-1   step(步长)
  • 循环使用 else 语句
    在 python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。

循环中断

关键字含义
break跳出整个循环,不会再执行循环后面的内容
continue跳出本次循环,continue后面的代码不再执行,但是循环依然继续
exit()结束程序的运行

for语句示例

  • 有1,2,3,4四个数字,求四个数字能生成多少个互不相同且无重复数字的三位数(不能含有122 133类似)
count = 0
for i in range(1, 5):
    for j in range(1, 5):
        for k in range(1, 5):
            if i != j and j != k and k != i:
                print('This number is %d' % (100 * i + 10 * j + k))
                count += 1
print("一共有%d个无重复数字的三位数" % (count))

结果:在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值