成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一日一技:巧用or關(guān)鍵字實(shí)現(xiàn)多重條件判斷

開(kāi)發(fā) 后端
在Python開(kāi)發(fā)過(guò)程中,我們難免會(huì)遇到多重條件判斷的情況的情況,此時(shí)除了用很多的if...elif...else以外,還可以巧用or關(guān)鍵字實(shí)現(xiàn)。

[[377596]]

在Python開(kāi)發(fā)過(guò)程中,我們難免會(huì)遇到多重條件判斷的情況的情況,此時(shí)除了用很多的if...elif...else以外,還可以巧用or關(guān)鍵字實(shí)現(xiàn)。

例如,我們要獲取天氣信息,現(xiàn)在有三個(gè)api接口。

  1. api_1() 
  2. api_2() 
  3. api_3() 

其中api_1()的數(shù)據(jù)又詳細(xì)又好,但是接口不穩(wěn)定,可能隨時(shí)會(huì)掉線。

api_2()返回的結(jié)果比api_1()稍微差一點(diǎn),但是穩(wěn)定性還不錯(cuò)。

api_3()接口返回的是兜底數(shù)據(jù),就是在前兩個(gè)接口都故障的情況下才會(huì)使用。

如果前兩個(gè)接口正常工作時(shí)返回字典,故障時(shí)他們都會(huì)返回None。

現(xiàn)在我們要獲取天氣信息,你可能會(huì)這樣寫(xiě)代碼:

  1. weather = api_1() 
  2. if not weather: 
  3.     weather = api_2() 
  4.     if not weather: 
  5.         weather = api_3() 

代碼這樣寫(xiě),功能自然是沒(méi)有問(wèn)題,但是非常難看。

實(shí)際上,代碼可以寫(xiě)為:

  1. weather = api_1() or api_2() or api_3() 

只需要1行代碼就能實(shí)現(xiàn)自動(dòng)選擇。如果api_1()返回的是一個(gè)非空字典,那么由于短路效應(yīng),后面的兩個(gè)函數(shù)都不會(huì)運(yùn)行。當(dāng)api_1返回None時(shí),api_2()才會(huì)運(yùn)行。并且如果api_2()返回非空字典,那么api_3()依然不會(huì)運(yùn)行。

我們現(xiàn)在在Jupyter里面測(cè)試一下,首先看看如果api_1()直接返回非空字典的情況,如下圖所示。

可以看到,在api_2()和api_3里面的兩行print語(yǔ)句都沒(méi)有執(zhí)行。

接下來(lái)我們看看api_1()故障時(shí)候的情況。

此時(shí)先運(yùn)行api_1()返回None,再運(yùn)行api_2()返回非空字典。符合預(yù)期。

當(dāng)前兩個(gè)函數(shù)都返回None的時(shí)候,第三個(gè)函數(shù)才會(huì)運(yùn)行,如下圖所示。

除了做多重條件判斷外,還可以用來(lái)自己和自己取或操作,實(shí)現(xiàn)重試。

例如api_1()可能成功也可能失敗,所以需要嘗試運(yùn)行3次,那么代碼可以這樣寫(xiě):

  1. weather = api_1() or api_1() or api_1() 

本文轉(zhuǎn)載自微信公眾號(hào)「未聞Code」,可以通過(guò)以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系未聞Code公眾號(hào)。

 

責(zé)任編輯:武曉燕 來(lái)源: 未聞Code
相關(guān)推薦

2022-06-28 09:31:44

LinuxmacOS系統(tǒng)

2021-09-13 20:38:47

Python鏈?zhǔn)?/a>調(diào)用

2021-03-12 21:19:15

Python鏈?zhǔn)?/a>調(diào)用

2024-11-11 00:38:13

Mypy靜態(tài)類(lèi)型

2021-07-27 21:32:57

Python 延遲調(diào)用

2021-10-15 21:08:31

PandasExcel對(duì)象

2021-04-27 22:15:02

Selenium瀏覽器爬蟲(chóng)

2024-10-16 21:47:15

2025-05-28 03:15:00

Scrapy數(shù)據(jù)sleep

2021-04-12 21:19:01

PythonMakefile項(xiàng)目

2021-07-26 21:15:10

LRU緩存MongoDB

2023-10-28 12:14:35

爬蟲(chóng)JavaScriptObject

2024-11-13 09:18:09

2021-04-05 14:47:55

Python多線程事件監(jiān)控

2022-03-12 20:38:14

網(wǎng)頁(yè)Python測(cè)試

2024-07-30 08:11:16

2024-07-30 08:16:18

Python代碼工具

2021-04-19 23:29:44

MakefilemacOSLinux

2024-05-24 09:07:06

JSONprint字符串

2021-10-03 20:08:29

HTTP2Scrapy
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 秋霞电影一区二区三区 | 国产精品久久久久久久久久久久午夜片 | 国产一区二区激情视频 | 国产精品1区2区3区 一区中文字幕 | 在线视频日韩精品 | 国产精品久久久久久久久久久久久 | 欧美乱人伦视频 | 美国一级黄色片 | 日韩视频一区在线观看 | 色婷婷精品国产一区二区三区 | 久久99精品视频 | www.一级毛片 | 色综合桃花网 | 欧美日韩电影免费观看 | 91最新入口 | 男人天堂99 | 天天操 天天操 | 无码日韩精品一区二区免费 | 亚洲精品国产电影 | 精品日韩一区 | 蜜桃视频在线观看免费视频网站www | 亚洲 中文 欧美 日韩 在线观看 | 看av网址| 精品在线一区二区 | 中文字幕一区二区三区日韩精品 | 日日夜夜精品视频 | 国产精品久久久久久久久 | av一级久久 | 国产一级特黄aaa大片评分 | 大陆一级毛片免费视频观看 | 日韩免费视频一区二区 | 色一情一乱一伦一区二区三区 | 日本不卡一区二区 | 国产精品久久久久久久久久久久 | 亚洲国产成人在线 | 999国产视频| 久久久高清 | 日本三级精品 | 黄色一级片视频 | 久久99精品久久久久久国产越南 | 久久国产婷婷国产香蕉 |