循环while,for

本文介绍了Python中的while和for循环,包括while循环的基本结构与素数判断案例,以及for循环的使用,如遍历容器和打印特定图案。特别关注了break和continue关键字的作用以及如何避免死循环。
摘要由CSDN通过智能技术生成

一、while循环

while 条件:

        执行循环体

else :

        print()

else可以可不要

案例:

.判断素数

判断素数,即该数除以2取余为0

num % 2 == 0

num = int(input("请输入一个整数:"))
if num <= 1 :
	print("不是质数")
elif num == 2 :
	print("是质数")
else :
	i = 2
	while i < num :
		if num % i == 0 :
			print("不是质数")
			break
		i += 1
	else :
		print("是质数")

注意:while 需要有结束条件,比如break,或者while+条件,不满足条件后跳出循环。否则,容易出现死循环。

二、for循环

for in 循环是用来遍历容器(可迭代对象)

引入函数range()  ----- 范围,区间的意思

range(参数1,参数2,step)-----step表示间隔

range(参数1)  ----- 表示的是从0~参数1范围内,前闭后开[ , )

range(参数1,参数2) ----- 前闭后开[ , )

range(参数1,参数2,step) ------ 从参数1,到参数2,左闭右开

for i in range(1,5,1) :

if 条件可嵌套在for 循环里(长使用)

案例:打印图案

打印图形过程:

1.先打印空格部分

2.再打印“*”,分为上下两部分

3.找出“*”规律与行数有关,再写一个循环来打印“*”

for j in range(0,star_num) :

        print("*",end="")

layer = int(input("请输入奇数层数:"))
for i in range(1,layer // 2 + 2) :
    space_num = layer - i
    for j in range(0,space_num) :
        print(" ",end="")
    star_num = 2 * i - 1
    for j in range(0,star_num) :
        if j == 0 or j == star_num - 1 or j == star_num // 2 or i == layer // 2 + 1:
            print("*",end="")
        else :
            print(" ",end="")
    print("")
for i in range(layer // 2,0,-1) :
    space_num = layer - i
    for j in range(0,space_num) :
        print(" ",end="")
    star_num = 2 * i - 1
    for j in range(0,star_num) :
        if j == 0 or j == star_num - 1 or j == star_num // 2 :
            print("*",end="")
        else :
            print(" ",end="")
    print("")

结果:

请输入奇数层数:7
      *   
     ***  
    * * * 
   *******
    * * * 
     ***  
      * 

为末尾end传递一个空字符串,这样print函数不会在字符串末尾添加一个换行符,而是添加一个空字符串,其实这也是一个语法要求,表示这个语句没结束。print默认为打印一行,end=' '意思是末尾不换行,加空格

三、break and continue

break  ---- 跳出循环,终止循环

continue  ---- 跳过循环,进入下一层循环

pass  ---- 不仅可以用在循环中,用在任何地方

for in range() :

        执行循环体

else :

循环部分正常结束后执行else

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值