博客
关于我
python and或or 当参数传递的时候的用法
阅读量:802 次
发布时间:2023-03-05

本文共 619 字,大约阅读时间需要 2 分钟。

Python运算符短路特性测试

class MyTest:    def __init__(self, name):        print(name)        print('or的用法')  result1 = MyTest('jjw' or 'jj')  result2 = MyTest('jj' or 'jjw')  print('and的用法')  result3 = MyTest('jj' and 'jjw')  result4 = MyTest('jjw' and 'jj')

执行结果分析

or的用法

jjwjj

and的用法

jjwjj

操作规则解析

在实际操作中发现:

1. or运算符特性

or运算符具有短路特性,即当第一个参数为真值时,会立即返回第一个参数的值,而不继续评估第二个参数。这种特性可以节省资源和避免不必要的计算。但需要注意的是,Python中字符串的比较规则会导致or运算的结果不总是直观,具体结果取决于字符串的比较顺序。

2. and运算符行为

and运算符则完全不同,它会严格按照逻辑与操作的规则执行。当且仅当两个参数都是真值时,才会返回第二个参数的值。也就是说,and运算符会一直执行直到最后一个参数被评估,无论前面是什么结果。

通过本次实验可以看出,or和and运算符在实际应用中的行为差异,尤其是在处理字符串值时,需要特别注意其内在机制。这种理解对日常编程实践具有重要的参考价值。

转载地址:http://uvafk.baihongyu.com/

你可能感兴趣的文章
Python asyncio库的学习和使用
查看>>
Python AttributeError:“dict“对象没有属性“append“
查看>>
Python base64和hashlib模块
查看>>
python basic programs
查看>>
python bert_gen.py 报错Unable to load weights from pytorch checkpoint file for......
查看>>
python binascii.Error: Incorrect padding
查看>>
Python bool() 函数能否为无效参数引发异常?
查看>>
Python C 程序子进程在“for line in iter“处挂起
查看>>
Python Celery:自动化测试平台定时任务必备的三方库
查看>>
python check_output 失败,退出状态为 1,但 Popen 适用于相同的命令
查看>>
Python CONNECT 4 CHECK WIN函数
查看>>
python cos,Python cos(90)和cos(270)不是0
查看>>
python进阶(4):Python 脚本文件重启自身进程
查看>>
python ctypes库中动态链接库加载方式
查看>>
python cv2 图像( np array )转 HObject
查看>>
python进阶(3):文件操作
查看>>
python cv2截取不规则区域图片
查看>>
python CV2裁剪图片并保存
查看>>
python进阶(2):pyecharts使用
查看>>
python cv2读取rtsp实时码流按时生成连续视频文件
查看>>