Python3:循环语句

for 和while


1、while 循环

不支持do……while

while 判断条件(condition):
    执行语句

满足条件是执行语句;不满足条件时结束循环
ps:注意冒号和缩进

# 1-100总和
n=1
s=0
while n<=100:
    s+=n
    n+=1
print("1-100的总和是%d"%s)


while True: # 无限循环
    num=int(input("请输入一个数字:"))
    print("你输入的数字是:",num)
  • while……else
while 判断条件(condition):
    执行语句
else: # 判断条件是false时,执行
   执行语句2
# 3:while-else
n=1
s=0
while n<=100:
    s+=n
    n+=1
else: # while后条件判断为false时,执行
    print(f"s={s},n={n}") # s=5050,n=101

# 应用
# 3:while-else
n=1
s=0
while n<=100:
    s+=n
    n+=1
    if s>100:
        print(f"s={s}")
        break  # break终止循环,无法实现判断条件false,则else不执行
else: # while后条件判断为false时,执行
    print(f"s={s},n={n}") # s=5050,n=101
  • 单行语句
    循环体只有一条语句,可以同行书写
# 简单语句
flag=True
while flag:print("welcome!")

2、for循环

遍历可迭代对象,如列表、字符串等

# for
for var in iterable:
   执行语句1

# for……else
for var in iterable:
   执行语句1
else:   # 循环执行完毕即遍历完iterable中所有元素(存在误差)
   执行语句2
# for
for i in range(1,11):
    print(i) # 1-10

# for……else
for i in range(5):
    print(i) # 0-4
else: # 遍历完所有元素后,执行
    print('done')  # done

# for……else (break执行)
for i in range(5):
    print(i)  # 0-4
    if i>4:
        break
else: # break执行,不满足条件
    print('done')


3、range()函数

内置函数,生成数列
range(start=0,stop,step=1)
start:默认0,计数开始
stop:,计数结束,但不包括stop
step:步长,默认1;步长为负数时,start>stop

使用: range(stop)range(start,stop)range(start,stop,step)

number=range(1,11,2)
print(number) # range(1, 11, 2)
print(list(number))  # [1,3,5,7,9] # 若需要整数序列,则直接将返回值转为list或tuple即可
# print(type(number)) # <class 'range'>
# for i in number:
#     print(i)  # 1,3,5,7,9

# step<0
num2=range(9,0,-2)
# for i in num2:
#     print(i)  # 1,3,5,7,9


4、break & continue

break:终止整个循环
continue:中止当前循环,跳到下一循环;即当前循环中continue后面语句不执行,


# continue
for i in range(5):
    if i==3: # 满足条件后结束当前循环,故3无法输出;但跳到了下一次循环,故4可以正常输出
        continue
    print(f"i={i}")
# 输出0 1 2 4

# break
for i in range(5):
    if i==3: # 满足条件后终止整个循环,故之后的4也无法输出
        break
    print(f"i={i}")
# 输出0 1 2

故而:for……elsewhile……else中,若循环体中有breakbreak执行了,则else语句将不会执行;

# else使用(特殊情况)
for i in range(5):
    if i==4:
        break
else: # i=4,循环遍历完成,但通过break终止,仍不执行else
    print("done!")

5、pass 语句

pass 空语句
不做任何事情,一般用做占位语句,以保证程序结构的完整性


6、参考

1、Python3 循环语句
2、Python3 range() 函数用法

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容