Python基础-09条件语句
9.条件语句
9.1 基本语法
在编程语言中,会经常碰到在不同条件下完成不同的操作功能,在Python中仅提供了if-elfif...else等条件语句,并未提供其他语言中的switch语句(如果深刻字典,也可以用字典实现switch功能),其基本语法格式如下所示:
1.基本格式
if condition:
doSomething
elif condition:
doSomething
...
else:
doSomething
2.嵌套格式
if condition:
if condition:
doSomething
else:
doSomething
elif condition:
if condition:
doSomething
elif condition:
doSomething
else:
doSomething
...
else
if condition:
doSomething
else:
doSomething
基本变异形式示意图如下所示:



9.2 三元运算符
相信有其他编程语言基础的童鞋都知道三元运算符,Python同样也提供了,基本格式如下所示:
[result = ] TrueResult if condition else FalseResult
心细的童鞋,应该发现前面的示例中已经用到这种格式的三元运算符了,可以在实践中多使用体会。
9.3 字典实现switch条件判断
可能有其他编程语言基础的童鞋比较怀念switch语句,而Python官方却又没有提供这个条件判断方法,我们一直来看看,如何结合字典来实现switch功能吧,示例代码如下所示:
def add(x:int,y:int)->int:
print( x+y)
def sub(x:int,y:int)->int:
print( x-y)
def mul(x:int,y:int)->int:
print( x*y)
def div(x:int,y:int)->int:
if y:
print( x/y)
def simpleCaculator(operator:str,x:int,y:int)->None:
dic={
"+":add,
"-":sub,
"*":mul,
"/":div,
}
return dic.get(operator)(x,y)
if __name__ == '__main__':
simpleCaculator("+", 1, 2)
simpleCaculator("-", 1, 2)
simpleCaculator("*", 1, 2)
simpleCaculator("/", 1, 2)
以上其实运用函数在Python是一等公民的特性(后面会讲),运行结果如下所示:
3
-1
2
0.5
9.4 示例代码
示例代码如下所示:
tmpStr=int(input("请输入一个数字:"))
if tmpStr<0:
print("您输入的数字小于0")
elif tmpStr<100:
if 0<=tmpStr<=50:
print("您输入的数字介于[0,50]")
elif 50<tmpStr<=100:
print("您输入的数字介于(50,100]")
else:
if 100<tmpStr<=999:
print("您输入的数字介于(100,999]")
else:
print("您输入的数字太大了,暂时不输出信息")
本文地址:https://www.cnblogs.com/surpassme/p/12969222.html本文同步在微信订阅号上发布,如各位小伙伴们喜欢我的文章,也可以关注我的微信订阅号:woaitest,或扫描下面的二维码添加关注:

作者: Surpassme
来源: http://www.jianshu.com/u/28161b7c9995/
http://www.cnblogs.com/surpassme/
声明:本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出 原文链接 ,否则保留追究法律责任的权利。如有问题,可发送邮件 联系。让我们尊重原创者版权,共同营造良好的IT朋友圈。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现