Python中的else,不只是else

本文通过求100以内的素数实例介绍了Python中else语句的三种用法:与if语句结合的基本用法、与while循环配合使用来判断是否执行了break语句、与try-except一起使用来判断是否发生了异常。

该文章转自优快云的 MSP_甄心cherish

  https://blog.youkuaiyun.com/zmq570235977/article/details/48267125

因在使用python的时候遇到了该问题,故转载该文章以铭记

 

题目:求100之内的素数   

l=[]
for a in range(101):
    for b in range(2,a):
        if a%b==0 :
            break
    else:
        l.append(a)
print(l)

 

 

与多数编程语言一样,Python中同样也有else关键字

但与多数编程语言不一样的是,else关键字在python中的用法不仅仅是普通的else

下面通过简单的例子说明else的三个用法

 

首先是最普通的,与if搭配的分支结构:

 

 

[python] view plain copy

  1. num = int(input('请输入一个整数:'))  
  2. if num % 2 == 0:  
  3.     print('%d是偶数' % num)  
  4. else:  
  5.     print('%d是奇数' % num)  


除了上面最基本的用法,else语句还可以跟while搭配。

当while语句中有break,就可以使用else来判断是否执行了break:

 

[python] view plain copy

  1. def IsPrimeNumber(num):  
  2.     temp = num // 2  
  3.     while temp > 1:  
  4.         if num % temp == 0:  
  5.             print('%d最大的约数是%d' % (num, temp))  
  6.             break  
  7.         temp -= 1  
  8.     else:  
  9.         print('%d是素数' % num)  
  10.   
  11. num = int(input('请输入一个整数:'))  
  12. IsPrimeNumber(num)  


上面的例子是判断一个整数是否为素数,如果遇到break,说明该整数不是素数,程序退出while语句。当while中不执行break语句,就会执行else,此时得到该整数是素数的结果

 

else还可以跟try语句搭配使用:

 

[python] view plain copy

  1. try:  
  2.     int('1')  
  3. except ValueError as msg:  
  4.     print("出错了!"+str(msg))  
  5. else:  
  6.     print("正确执行")  


当try语句出现异常则进入except语句,否则执行else语句

MSP_甄心cherish

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值