21.Python return逻辑判断表达式

最后更新于:2020-03-21 11:56:53

一.return逻辑判断表达式 and

and:遇假则假,所以前面为假就不执行和判断后面直接返回假;前面为真则继续判断执行后面直到表达式结束或者出现假为止;

# !usr/bin/env python

# -*- coding:utf-8 _*-

"""

@Author:何以解忧

@Blog(个人博客地址): shuopython.com

@WeChat Official Account(微信公众号):猿说python

@Github:www.github.com

@File:python_return.py

@Time:2019/10/6 19:48

@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!

"""

def fun1():

# 所有条件都为真,返回最后一个值

return "21" and True

def fun2():

# 检测所有表达式,直到遇到假为止,并返回假

return 54 and 1 and True and 0

def fun3():

# 遇到真,继续后面的判断,直到遇到假为止,如果遇见假直接返回,不再继续判断

return 1 and True and False and 54 and 0

print(fun1())

print(fun2())

print(fun3())

输出结果:

True

0

False

小敲门:

1.如果有假的表达式:返回值为第一个假表达式的结果;

2.如果没有假的表达式:返回值为最后一个真表达式的结果;

二.return逻辑判断表达式 or

or:遇真则真,所以前面为真就不执行和判断后面;前面为假则继续判断执行后面直到表达式结束或者出现真为止;

def fun1():

# 所有条件都为真,返回第一个真的表达式

return "21" or True

def fun2():

# 所有条件都为假,直到遇到真为止,并返回真,没有真则返回最后一个假

return "" or False or 0

def fun3():

# 直到遇到真为止,并返回真,不在继续后面的判断

return 0 or True or False or 54 or 0

print(fun1())

print(fun2())

print(fun3())

输出结果:

21

0

True

小敲门:

1.如果有真的表达式:返回值为第一个真表达式的结果;

2.如果没有真的表达式:返回值为最后一个假表达式的结果;

三.return逻辑判断表达式 and和or配合使用

and和or配合使用:其实并没有先后顺序,表达式重前往后依次执行,上一个表达式的结果作为下一个表达式的开始;

def fun1():

'''

动作分解:

第一步:"21" and True 返回结果 True

第二步:True or 1 返回结果 True

注意第二步 True or 1 中的 True 是第一步返回的结果并不是表达式中的True

'''

return "21" and True or 1 #等价:return (("21" and True) or 1)

def fun2():

'''

动作分解:

第一步:"" or False 返回结果 False

第二步:False and 0 返回结果 False

注意第二步 False and 0 中的 False 是第一步返回的结果并不是表达式中的 False

'''

return "" or False and 0 #等价:return (("" or False) and 0)

def fun3():

'''

动作分解:

第一步:0 or True 返回结果 True

第二步:True and False 返回结果 False

第三步:False or 54 返回结果 54

第四步:54 and 0 返回结果 0

注意:上一步的结果作为下一步的开始

'''

return 0 or True and False or 54 and 0 #等价:return ((((0 or True) and False) or 54) and 0)

def fun4():

'''

动作分解:

第一步:0 and True and False 返回结果 0

第二步:0 or 54 返回结果 54

第三步:54 and 0 返回结果 0

注意:上一步的结果作为下一步的开始

'''

return 0 and True and False or 54 and 0 #等价:return (((0 and True and False) or 54) and 0)

print(fun1())

print(fun2())

print(fun3())

print(fun4())

输出结果:

True

False

0

0

四.重点总结

其实作为一个普通函数直接返回字符串或者其他数据类型就完了,为何非要这样费力不讨好?学习学习,学习是一个过程,我想我们应该过程中成长,不然即使写了一万次hello world又有何用?return逻辑判断表达式 /

猜你喜欢:

技术交流、商务合作请直接联系博主

扫码或搜索:猿说python

猿说python

微信公众号 扫一扫关注

赞赏

微信赞赏支付宝赞赏

python逻辑判断_return逻辑判断表达式相关推荐

  1. Python中的Lambda表达式

    Lambda表达式 (Lambda Expressions) Lambda Expressions are ideally used when we need to do something simp ...

  2. python输入字符串转换为公式_将python字符串转化成长表达式的函数eval实例

    爬一个网页时,要保存的数据都没有encode,就导致保存下来的中文都变成unicode了... 那么,怎么把一个表示字符串的unicode还原成unicode呢? 函数eval(expression) ...

  3. Python、C++ lambda 表达式

    Python.C++ lambda 表达式 lambda函数简介 匿名函数lambda:是指一类无需定义标识符(函数名)的函数或子程序.所谓匿名函数,通俗地说就是没有名字的函数,lambda函数没有名 ...

  4. python语言中以下表达式输出结果为11_超星尔雅物业项目管理实务答案单元测试答案...

    中国大学MOOC: X是区间(a,b)上的均匀分布,则X落在区间(a,b)内每个等长小区间内的概率都一样. 答:对 汇率值越大,说明外币汇率越高 答:× 智慧职教: 下列哪一项不属于当下社会结构改变带 ...

  5. Python基础之lambda表达式

    目录 1.lambda函数介绍 2.lambda函数与def函数的区别 3.lambda案例 4.map方法混搭 1.lambda函数介绍 有时在使用函数时不需要给函数分配一个名称,该函数就是&quo ...

  6. python中的逻辑判断与循环

    目录 1.顺序语句 2.条件语句 (1)if (2)if-else (3)if-elif-else 练习: 1.输入一个整数,判定是否是奇数 2.输入一个整数,判断是正数还是负数 3.判定年份是否是闰 ...

  7. python入门之逻辑判断

    目录 一.判断(if)语句 二.逻辑运算 三.if语句进阶 四.综合应用--石头剪刀布 五.循环 一.判断(if)语句 1.判断语句演练--判断年龄 """ 需求 1.定 ...

  8. python中的逻辑判断

    文章目录 if条件语句 if单独使用 if~else合用 if ~ elif~else连用:多条件判断 if的嵌套使用 逻辑运算符 and 与逻辑 or 或逻辑 not 非逻辑 for循环语句 for ...

  9. shell逻辑判断式与表达式

    逻辑卷标 表示意思 1. 关于档案与目录的侦测逻辑卷标! -f 常用!侦测『档案』是否存在 eg: if [ -f filename ] -d 常用!侦测『目录』是否存在 -b 侦测是否为一个『 bl ...

最新文章

  1. 380万播放量,也许是全网最火的机器学习视频
  2. 不要假装很努力,因为结果不会陪你演戏
  3. Qt基于文本协议的网络应用开发
  4. Dynamics CRM Odata QueryUrl中的SetName问题
  5. GPS 校验和 代码_Linux recovery 移除签名校验
  6. 计算机视觉论文-2021-05-11
  7. 裁员、卖手机、押注VR,HTC能否王者归来?
  8. cgic 测试demo
  9. 通过CMD命令行获取文件夹下的所有文件名称(电脑小白专用)
  10. 供电绘图计算软件-新增了图库管理功能
  11. EF 4.3 Code-Based Migrations
  12. qca9377linux无线驱动,ubuntu下安装无线网卡去驱动Qualcomm-Atheros-QCA9377
  13. java验证图片大小_java 校验图片的大小、尺寸、比例
  14. Tensorflow训练的模型,如何保存与载入?
  15. concurrent.futures模块使用
  16. AFNetworking理解:
  17. 好的大创计算机类课题,年电信学院大创项目选题清单.xlsx
  18. 园区大数据治理解决方案(附PPT下载)
  19. .NET Framework和.NET Core/.NET5/.NET6
  20. 深度学习(一)多层感知器MLP/人工神经网络ANN

热门文章

  1. Vimium快捷键使用
  2. Vue之代码自动格式化
  3. android之weex之component插件开发
  4. 雷达的工作原理示意图_雷达的荧光屏真的相当于蝙蝠的耳朵吗
  5. mysql insert 性能_MySQL 提高Insert性能
  6. 外星人进化_外星人真的比人类强大吗?科学家给出几种猜想,你认同吗?
  7. python最大公约数计算。从键盘接收两个整数_python如何求解两数的最大公约数
  8. Linux 根据服务名字找安装路径
  9. 如何设置Android Studio绘制布局时的视图
  10. mysql search yum_mysql的yum安装与配置