解锁即可观看《Python全能工程师2022》完整课程视频

Python全能工程师2022

2022版全新上线!覆盖Python五大热门就业方向,零基础进击多领域高薪岗位。全能培养,告别选择困扰

【第1周】环境搭建与基础语法
【第2周】三大主流数据类型的操作
【第3周】Python流程控制与函数
【第4周】Python面向对象与异常处理机制
【第5周】Python模块与文件操作
【第6周】多线程编程、正则表达式与综合项目实战
【第7周】Python办公自动化
【第8周】MySQL数据库
【第9周】Python与MySQL的交互
【第10周】Redis数据库
【第11周】MongoDB数据库
【第12周】开发必备前端基础之HTML与CSS
【第13周】开发必备前端基础之JavaScript与jQuery
【第14周】初探网络爬虫
【第15周】网络爬虫进阶与实战
【第16周】高级爬虫框架
【第17~18周】高级爬虫项目实战与爬虫面试指导
【第19周】数据分析入门
【第20周】数据分析进阶:数据可视化
【第21周】数据分析进阶:统计分析与机器学习
【第22周】数据分析项目综合实战与就业指导
【第23周】企业级开发语言ES6与前端开发框架Bootstrap
【第24周】夯实框架基础:Python全栈开发必学后端主流框架Flask
【第25周】项目实战:Flask实战开发在线问答系统
【第26周】入门Python Web全栈开发必备主流框架Django
【第27周】Django ORM模型和表单
【第28周】前端框架基础:前端开发必学Vue框架
【第29周】项目实战:Django+Vue全栈开发旅游网项目首页
【第30周】项目实战:Django+Vue全栈开发旅游网项目景点详情模块
【第31周】项目实战:Django+Vue全栈开发旅游网项目登录注册模块
【第32周】项目实战:Django+Vue全栈开发旅游网项目订单支付模块
【第33周】项目实战:全栈开发旅游项目后台管理系统与项目部署
【第34~35周】Python技能拓展之软件自动化测试
【第36周】Python技能拓展之人工智能
章节
问答
课签
笔记
评论
占位
占位

Python的布尔类型

前面我们了解到,布尔类型是Python的基础数据类型,布尔类型只有True和False两种值,本节课我们学习布尔类型的集中运算。

与运算

只有两个布尔值都为 True 时,计算结果才为 True。

True and True # ==> True
True and False # ==> False
False and True # ==> False
False and False # ==> False

或运算

只要有一个布尔值为 True,计算结果就是 True。

True or True # ==> True
True or False # ==> True
False or True # ==> True
False or False # ==> False

非运算

把True变为False,或者把False变为True:

not True # ==> False
not False # ==> True

这些运算有什么用呢?计算机程序是由无数的逻辑分支组成的,通过布尔运算,可以在计算机中实现条件判断,根据计算结果为True或者False,计算机可以自动执行不同的后续代码,因此学习布尔运算也是非常有必要的。

在Python中,布尔类型还可以与其他数据类型(字符串,数字等)做 and、or和not运算,请看下面的代码:

a = True
print(a and 0 or 99) # ==> 99

得到的计算结果不是布尔类型,而是数字99,这是为什么呢?

因为Python把0、空字符串和None看成False,其他数值和非空字符串都看成True,所以:

True and 0计算结果是0 
继续计算0 or 99计算结果是 99 
因此,结果是99。
需要注意的是,not计算的优先级是高于and和or的。

True and not False # ==> True

在上述布尔计算中,先计算not False = True,然后再计算True and True,因此得到True的结果。

短路计算

  1. 在计算a and b时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。
  2. 在计算a or b时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。

所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。

任务

请运行如下代码,并解释打印的结果:

a = 'python'
print('hello,', a or 'world')
b = ''
print('hello,', b or 'world')
?不会了怎么办

解释:通过 or 运算,可以把空字符串"变成"默认字符串,而非空字符串保持不变。

||

提问题

写笔记

公开笔记
提交
||

请验证,完成请求

由于请求次数过多,请先验证,完成再次请求

加群二维码

打开微信扫码自动绑定

您还未绑定服务号

绑定后可得到

  • · 粉丝专属优惠福利
  • · 大咖直播交流干货
  • · 课程更新,问题答复提醒
  • · 账号支付安全提醒

收藏课程后,能更快找到我哦~

使用 Ctrl+D 可将课程添加到书签

邀请您关注公众号
关注后,及时获悉本课程动态

举报

0/150
提交
取消
全部 精华 我要发布
全部 我要发布
最热 最新
只看我的

手记推荐

更多

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?