电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

Python中and和or如何使用

瀏覽:7日期:2022-07-24 08:57:30

Python中and、or是Python中的邏輯運(yùn)算符,它們的用法如何呢?

and:

在Python 中,and 和 or 執(zhí)行布爾邏輯演算,如你所期待的一樣,但是它們并不返回布爾值;而是,返回它們實(shí)際進(jìn)行比較的值之一。

代碼如下:

>>> ’a’ and ’b’ ’b’ >>> ’’ and ’b’ ’’ >>> ’a’ and ’b’ and ’c’ ’c’

在布爾上下文中從左到右演算表達(dá)式的值,如果布爾上下文中的所有值都為真,那么 and 返回最后一個(gè)值。

如果布爾上下文中的某個(gè)值為假,則 and 返回第一個(gè)假值

or:

代碼如下:

>>> ’a’ or ’b’ ’a’ >>> ’’ or ’b’ ’b’ >>> ’’ or [] or {}{} >>> 0 or ’a’ or ’c’ ’a’

使用 or 時(shí),在布爾上下文中從左到右演算值,就像 and 一樣。如果有一個(gè)值為真,or 立刻返回該值

如果所有的值都為假,or 返回最后一個(gè)假值

注意 or 在布爾上下文中會(huì)一直進(jìn)行表達(dá)式演算直到找到第一個(gè)真值,然后就會(huì)忽略剩余的比較值

and-or:

and-or 結(jié)合了前面的兩種語法,推理即可。

>>> a=’first’ >>> b=’second’ >>> 1 and a or b ’first’ >>> (1 and a) or b ’first’ >>> 0 and a or b ’second’ >>> (0 and a) or b ’second’ >>>

這個(gè)語法看起來類似于 C 語言中的 bool ? a : b 表達(dá)式。整個(gè)表達(dá)式從左到右進(jìn)行演算,所以先進(jìn)行 and 表達(dá)式的演算。 1 and ’first’ 演算值為 ’first’,然后 ’first’ or ’second’ 的演算值為 ’first’。

0 and ’first’ 演算值為 False,然后 0 or ’second’ 演算值為 ’second’。

and-or主要是用來模仿 三目運(yùn)算符 bool?a:b的,即當(dāng)表達(dá)式bool為真,則取a否則取b。

and-or 技巧,bool and a or b 表達(dá)式,當(dāng) a 在布爾上下文中的值為假時(shí),不會(huì)像 C 語言表達(dá)式 bool ? a : b 那樣工作。

安全使用and-or

代碼如下:

>>> a='' >>> b='second' >>> (1 and [a] or [b])[’’] >>> (1 and [a] or [b])[0] ’’ >>>

由于 [a] 是一個(gè)非空列表,所以它決不會(huì)為假。即使 a 是 0 或者 ’’ 或者其它假值,列表 [a] 也為真,因?yàn)樗幸粋€(gè)元素。

一個(gè)負(fù)責(zé)的程序員應(yīng)該將 and-or 技巧封裝成一個(gè)函數(shù):

代碼如下:

def choose(bool,a,b): return (bool and [a] or [b])[0] print choose(1,’’,’second’) #’’

實(shí)例補(bǔ)充:

>>> a =’first’>>> b =’second’>>>1and a or b # 等價(jià)于 bool = true時(shí)的情況’first’>>>0and a or b # 等價(jià)于 bool = false時(shí)的情況’second’>>> a =’’>>>1and a or b # a為假時(shí),則出現(xiàn)問題’second’>>>(1and[a]or[b])[0]# 安全用法,因?yàn)閇a]不可能為假,至少有一個(gè)元素’’>>>

到此這篇關(guān)于Python中and和or如何使用的文章就介紹到這了,更多相關(guān)Python中and、or用法實(shí)例內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 慢回弹测试仪-落球回弹测试仪-北京冠测精电仪器设备有限公司 | 活性氧化铝|无烟煤滤料|活性氧化铝厂家|锰砂滤料厂家-河南新泰净水材料有限公司 | 西宁装修_西宁装修公司-西宁业之峰装饰-青海业之峰墅级装饰设计公司【官网】 | 酒店品牌设计-酒店vi设计-酒店标识设计【国际级】VI策划公司 | 不锈钢法兰-碳钢法兰-法兰盘生产加工厂家-[鼎捷峰]-不锈钢法兰-碳钢法兰-法兰盘生产加工厂家-[鼎捷峰] | 中央空调温控器_风机盘管温控器_智能_液晶_三速开关面板-中央空调温控器厂家 | 蜜蜂职场文库_职场求职面试实用的范文资料大全 | 不锈钢拉手厂家|浴室门拉手厂家|江门市蓬江区金志翔五金制品有限公司 | 干法制粒机_智能干法制粒机_张家港市开创机械制造有限公司 | 无菌检查集菌仪,微生物限度仪器-苏州长留仪器百科 | 棕刚玉-白刚玉厂家价格_巩义市东翔净水材料厂 | 专业的压球机生产线及解决方案厂家-河南腾达机械厂 | 粘度计维修,在线粘度计,二手博勒飞粘度计维修|收购-天津市祥睿科技有限公司 | 防爆电机_防爆电机型号_河南省南洋防爆电机有限公司 | 重庆网站建设,重庆网站设计,重庆网站制作,重庆seo,重庆做网站,重庆seo,重庆公众号运营,重庆小程序开发 | 免费B2B信息推广发布平台 - 推发网 | 双工位钻铣攻牙机-转换工作台钻攻中心-钻铣攻牙机一体机-浙江利硕自动化设备有限公司 | 真空泵维修保养,普发,阿尔卡特,荏原,卡西亚玛,莱宝,爱德华干式螺杆真空泵维修-东莞比其尔真空机电设备有限公司 | 金现代信息产业股份有限公司--数字化解决方案供应商 | IHDW_TOSOKU_NEMICON_EHDW系列电子手轮,HC1系列电子手轮-上海莆林电子设备有限公司 | 泰国试管婴儿_泰国第三代试管婴儿_泰国试管婴儿费用/多少钱_孕泰来 | 心得体会网_心得体会格式范文模板 | 杰恒蠕动泵-蠕动泵专业厂家-19年专注蠕动泵 | 纯化水设备-纯水设备-超纯水设备-[大鹏水处理]纯水设备一站式服务商-东莞市大鹏水处理科技有限公司 | 爆炸冲击传感器-无线遥测传感器-航天星百科 | 煤矿人员精确定位系统_矿用无线通信系统_煤矿广播系统 | 涿州网站建设_网站设计_网站制作_做网站_固安良言多米网络公司 | 武汉创亿电气设备有限公司_电力检测设备生产厂家 | 2025黄道吉日查询、吉时查询、老黄历查询平台- 黄道吉日查询网 | 不锈钢闸阀_球阀_蝶阀_止回阀_调节阀_截止阀-可拉伐阀门(上海)有限公司 | 百方网-百方电气网,电工电气行业专业的B2B电子商务平台 | 派克防爆伺服电机品牌|国产防爆伺服电机|高低温伺服电机|杭州摩森机电科技有限公司 | 机制砂选粉机_砂石选粉机厂家-盐城市助成粉磨科技有限公司 | 成都顶呱呱信息技术有限公司-贷款_个人贷款_银行贷款在线申请 - 成都贷款公司 | 广东机电安装工程_中央空调工程_东莞装饰装修-广东粤标建设有限公司 | 北京模型公司-工业模型-地产模型-施工模型-北京渝峰时代沙盘模型制作公司 | 电销卡_北京电销卡_包月电话卡-豪付网络| 超声骨密度仪-骨密度检测仪-经颅多普勒-tcd仪_南京科进实业有限公司 | 杭州中策电线|中策电缆|中策电线|杭州中策电缆|杭州中策电缆永通集团有限公司 | 预制围墙_工程预制围墙_天津市瑞通建筑材料有限公司 | 泰安塞纳春天装饰公司【网站】 |