当前位置: 首页 > news >正文

python分支结构(无switch结构)

#在if语句嵌套中,需要特别注意的else和if的配对问题。python编译系统处理该问题的原则是:else 总是与同一语法层次中离他最近的尚未配对的if配对
#例如:

x=10

y=85

if x>20 or x<-10:

if y<100 or y>x:

print("Good")

else:

print("Bad")

num=int(input("请输入一个数字:"))

if num%2==0:

if num%3==0:

print("你输入的数字可以整除2和3")

else:

print("你输入的数字可以整除2,但是不能整除3")

else:

if num%3==0:

print("你输入的数字可以整除3,但是不能整除2")

else:

print("你输入的数字,不能整除2和3")

#4.3.2真值测试;
#python与cC++在处理真值和逻辑运算的方式上有所不同。在python中:
#任何非0数字和非空对象都未真。
#数字0、空对象(如空列表[],空字典{})、None都为假;
#比较和相当测试返回true(真)或false(假)。
#逻辑运算and和or,会返回参与运算的真或假的对象。
#回顾:逻辑运算:not x:x非真即假,非假即真;
#x and y:双真才为真;x or y:x 双假才为假;
#1.比较和相等测试,总是返回true或false。
print(2<5)

print(2>5)

print(2==5)
#2 not 运算,not运算返回true或false。例如:
print(not True,not False)

print(not 0,not 1,not 2)

print(not 'abc',not [1,2],not{'a':12}) #非空对象为真;

print(not '',not[],not{}) #空的对象为假

#3.and和or,python中的and和or运算符总是返回参与运算的对象,而不True和False。Python在计算and运算时,总是按从左到右的顺序计算。
#在找到第一个计算为假的对象,返回该对象,即使右侧还有需要计算的对象,计算都结束。这种计算方式称为短路计算。
print(2 and 0)

print([] and 2)

print(2 and {})

print([]and{})

print(2 and 5) #如果参与运算的对象都为真,则返回最后一个为真的对象。
print(5 and 2)
#or运算同样执行短路计算,在找到第一个为真的对象时,返回该对象,计算结束。
print(0 or 2)

print(2 or [])

print(False or 5)

print([]or{})
print({}or[])
print(False or 5)
#3.3 if...elif 三元表达式
x=5
y=100
if x>y:
a=x
else:
a=y

print(a)
#该if语句,将x、y中较大值赋值给a,该语句可简化为如下的if...els三元表达式。
#a=x if x>y else y
#python还支持从列表中挑选对象,其基本格式如下:

a=[x,y][f]

#f为假时,将x赋值给a,否则将y赋值给a。假前,真后
a=5
b=10
c=[a,b][a>b]
print(c)

转载于:https://blog.51cto.com/2096101/2160592

相关文章:

  • shell脚本(三)
  • 2500元就可以做一个企业网站吗?网站建设价格多少合适?
  • svchost.exe占用CPU 100%的解决方法
  • 基于业务单元的开发与部署模式
  • good
  • Robot Framework之使用Cookie获取验证码登录账户
  • fopen 模拟 post 提交
  • 软件架构笔记 四
  • Cannot make a static reference to the non-static
  • git提交代码到远程仓库
  • 恢复显示“本地用户和组”和恢复显示“用户账户”
  • 封装和解构、集合、字典的简介
  • 2015必须要看的APP源码
  • 区块链核心技术之密码学研究指南
  • Android IOS WebRTC 音视频开发总结(二九)-- 安卓噪声消除交流
  • php的引用
  • [Vue CLI 3] 配置解析之 css.extract
  • “寒冬”下的金三银四跳槽季来了,帮你客观分析一下局面
  • Android Volley源码解析
  • css系列之关于字体的事
  • Essential Studio for ASP.NET Web Forms 2017 v2,新增自定义树形网格工具栏
  • JAVA并发编程--1.基础概念
  • leetcode388. Longest Absolute File Path
  • Python学习之路13-记分
  • select2 取值 遍历 设置默认值
  • WinRAR存在严重的安全漏洞影响5亿用户
  • 初识 webpack
  • 订阅Forge Viewer所有的事件
  • 那些被忽略的 JavaScript 数组方法细节
  • 前端每日实战:61# 视频演示如何用纯 CSS 创作一只咖啡壶
  • 前端学习笔记之原型——一张图说明`prototype`和`__proto__`的区别
  • 为物联网而生:高性能时间序列数据库HiTSDB商业化首发!
  • 协程
  • 译有关态射的一切
  • #Js篇:单线程模式同步任务异步任务任务队列事件循环setTimeout() setInterval()
  • $.ajax,axios,fetch三种ajax请求的区别
  • (1)(1.19) TeraRanger One/EVO测距仪
  • (33)STM32——485实验笔记
  • (笔试题)分解质因式
  • (二)什么是Vite——Vite 和 Webpack 区别(冷启动)
  • (非本人原创)我们工作到底是为了什么?​——HP大中华区总裁孙振耀退休感言(r4笔记第60天)...
  • (分布式缓存)Redis哨兵
  • (附源码)springboot 智能停车场系统 毕业设计065415
  • (附源码)springboot教学评价 毕业设计 641310
  • (论文阅读笔记)Network planning with deep reinforcement learning
  • (三)uboot源码分析
  • (深入.Net平台的软件系统分层开发).第一章.上机练习.20170424
  • (收藏)Git和Repo扫盲——如何取得Android源代码
  • (小白学Java)Java简介和基本配置
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解
  • .apk 成为历史!
  • .NET gRPC 和RESTful简单对比
  • .net 托管代码与非托管代码
  • .NET面试题(二)
  • .NET中GET与SET的用法