python--短路运算,把0、空字符串和None看成 False,其他数值和非空字符串都看成 True

这篇具有很好参考价值的文章主要介绍了python--短路运算,把0、空字符串和None看成 False,其他数值和非空字符串都看成 True。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

代码
print(3 and 4 and 5) # 5
print(5 and 6 or 7) # 6
4 > 3 and print(‘hello world’) # 输出hello world
python--短路运算,把0、空字符串和None看成 False,其他数值和非空字符串都看成 True,python+pycharm,python,开发语言
注释:
逻辑运算中,不一定逻辑运算符的两边都是纯表达式。也可以是数值类型的数据

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

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

print(3 and 4) # 4
print(0 and 1) # 0

人话:
吃一个苹果,分两半 a b , a是坏的 False,有虫子,那 整个就是坏的 False。不用再看b了,反正不会吃了。出来的结果:就是a。
如果 a 是好的,那就看看b是不是好的,也得看完之后再吃不是? 因为只剩下另一半b,b是好的或者坏的,最终以b为准,就等b的结果:就是b。
其实和人的逻辑是一样的。

② 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。 所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。

print(6 or 7) # 6
print(6 and 7 or 8) # 7

人话:
买1个苹果, 就有 a 和 b 两个苹果了 ,我可以选个,任何一个都可以, a是好的,那我就可以买了a苹果,b苹果好坏都行,反正有一个是好的,够吃了-------那我不贪心,就买 a 了。如果 a 是坏的,那我可以多个选择,看看b ,最终我买不买苹果,取决于b ,b 是好的,就要b, b如果也是坏的,那我 a b 两个都不要了,就可以判定:这个水果店,是坏的False,因为是最后通过b的好坏判定的,所以返回b,让别人知道为什么我判定这个水果店是坏的False。文章来源地址https://www.toymoban.com/news/detail-724646.html

到了这里,关于python--短路运算,把0、空字符串和None看成 False,其他数值和非空字符串都看成 True的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue 对后端返回字段值为null的变成空字符串

    // 字段null转字符串 1.export function null2str(data) {     for (let x in data) {         if (data[x] === null) {             // 如果是null 把直接内容转为 \\\'\\\'             data[x] = \\\"\\\";         } else {             if (Array.isArray(data[x])) {                 // 是数组遍历数组 递归继续处理      

    2024年02月11日
    浏览(40)
  • MySQL判断列的值既不为NULL又不为空字符串

    在MySQL中,可以使用IS NULL和IS NOT NULL操作符来判断一个字符串是否为NULL,可以使用’\\\'(空字符串)或NULL与字符串进行比较来判断一个字符串是否为空。 例如,假设我们有一个名为mytable的表,其中有一个名为mycolumn的列,我们可以使用以下查询来查找mycolumn列中不为空的值:

    2024年02月11日
    浏览(45)
  • java基础08-Java中的null和空字符串的区别是什么?

    null表示一个变量没有引用任何对象,而空字符串表示一个字符串变量引用了一个长度为0的字符串。 null:表示 一个变量没有引用任何对象 。也就是说,这个变量还 没有被分配内存 。如: 如上,str是一个String类型的变量,但目前它没有被引用任何对象,所以它的值为null。

    2024年01月22日
    浏览(40)
  • SpringBoot序列化、反序列化空字符串为null的三种方式

    SpringBoot项目 方式:①Jackson(推荐)、②切面+反射、③注解+切面+反射 后两种方式,未做返回值的处理。 1、 Jackson正反序列化(推荐) StdConverter 和 JsonSerializer的区别 ENTITY 序列化处理类 反序列化处理类 序列化-转换1 序列化-转换2 Controller 测试 2、切面+反射/3、注解+切面+反

    2024年04月22日
    浏览(43)
  • java判断字符串是否和空字符串(““)相等、是否和空引用(null)相等,比较顺序不同导致出现死代码(Dead code)

    我在用Java实现需求的时候,用到了字符串跟空字符串(“”)比较,跟空引用null比较,两个比较语句的顺序不同,一个顺序出现了死代码(Dead code)。 下面这个代码片段,字符串line跟空字符串(“”)的比较放在跟null的比较前面,编译器提醒红色方框中的代码是死代码:

    2024年02月14日
    浏览(70)
  • VScode Invoke-Expression: 无法将参数绑定到参数“Command”,因为该参数为空字符串

    打开vscode时发生错误:Invoke-Expression : 无法将参数绑定到参数“Command”,因为该参数为空字符串。 解决办法:在anaconda prompt base中输入:

    2024年02月07日
    浏览(34)
  • Oracle/MySQL/PG/SQL Server关系数据库中NULL与空字符串的区别

    在Oracle数据库中,\\\'\\\'(空字符串)与null是什么关系呢? \\\'\\\'(空字符串)是否会等同(或者说等价于)于null值呢?\\\'\\\'跟\\\' \\\'(长度为零的空字符串或包含一个或多个空格的空字符串)是否又等价?下面我们测试一下 如上所示,插入\\\'\\\'时,Oracle数据库确实将其等同与null,但是, 像\\\'

    2024年02月16日
    浏览(65)
  • springboot 项目,返回的实体类里面字段是null ,现在想要为空应该是““,空字符串,而不是null

    返回给前端的数据,如果数据库的字段没有数据,给返回的是null 要变成这个,全局都变成这样 springboot返回给页面的json数据中,如果有数据为null,则返回空字符串。 springboot默认使用jackson解析返回json数据。 只需要加上以上的配置就可以了

    2024年01月23日
    浏览(41)
  • 【SQL开发实战技巧】系列(四):从执行计划讨论UNION ALL与空字符串&UNION与OR的使用注意事项

    【SQL开发实战技巧】系列(一):关于SQL不得不说的那些事 【SQL开发实战技巧】系列(二):简单单表查询 【SQL开发实战技巧】系列(三):SQL排序的那些事 【SQL开发实战技巧】系列(四):从执行计划讨论UNION ALL与空字符串UNION与OR的使用注意事项 【SQL开发实战技巧】系列

    2024年02月21日
    浏览(45)
  • 8.Python从入门到精通—Python 字符串,转义字符,字符串运算符

    在 Python 中,字符串是一种基本数据类型,用于表示文本数据。Python 中的字符串是不可变的,即无法修改字符串中的单个字符。 以下是一些关于 Python 字符串的基本知识点: 创建字符串:可以使用单引号(\\\')或双引号(\\\")来创建字符串。如果字符串中包含引号,则需要使用

    2024年04月08日
    浏览(74)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包