在python中對于bool布爾值的取反操作
背景
根據(jù)公司業(yè)務(wù)的需求,需要做一個(gè)對于mysql數(shù)據(jù)庫的大批量更新。腳本嘛也是干干單單。使用了redis的隊(duì)列做緩存,可以異步并發(fā)的多任務(wù)進(jìn)行更新。
有點(diǎn)難受的地方在于,請求訪問時(shí),因?yàn)橐恍┚W(wǎng)速,速率之內(nèi)的原因,導(dǎo)致正常的數(shù)據(jù)會請求失敗。處理的方法呢,就是多請求幾次。
不過,麻煩的地方在于,每次重新請求,都要講原來get,和put的key轉(zhuǎn)換。手動更換起來麻煩的一批。
所以就想做一個(gè)自動的轉(zhuǎn)換小demo。
成熟的代碼應(yīng)該學(xué)會自己照顧自己。
自動轉(zhuǎn)換的機(jī)制是: 每一次請求,判斷bool值,依據(jù)bool值分別賦值,每次請求之前或者請求完成之后,需要修改Bool值。
這就涉及到今天的重點(diǎn)了,bool值的取反。
b = True
a = bool(1-b)
bool()函數(shù)中的1-bool值 就是取bool值的反值了。
實(shí)驗(yàn)的代碼如下:
def negation_bool(b):
b = bool(1 - b)
return b
def up(b):
if b is True:
unique1 = "map_url"
unique2 = "map2_url"
else:
unique1 = "map2_url"
unique2 = "map_url"
return unique1, unique2
b = True
num = 5
for i in range(num * 2):
b = negation_bool(b)
unique1, unique2 = up(b)
print(unique1, unique2)
print("+" * 50)

可以看到每次的值都是相反的。
bool值的取反操作,可以用來做一些有規(guī)律行的修改變量操作。例如代碼啟動的指示變量,代碼中關(guān)鍵的值等等。
我們的原則就是,能自動的絕不手動,能一鍵啟動的,絕不會做多余的操作。
補(bǔ)充:Python中bool類型轉(zhuǎn)換
在python中,以下數(shù)值會被認(rèn)為是False:
1、為0的數(shù)字,包括0,0.0
2、空字符串,包括”,”“
3、表示空值的None
4、空集合,包括(),[],{}
其他的值都認(rèn)為是True。
None是python中的一個(gè)特殊值,表示什么都沒有,它和0、空字符、False、空集合都不一樣。
bool(‘False')的結(jié)果是True,因?yàn)椤瓼alse'是一個(gè)不為空的字符串,當(dāng)被轉(zhuǎn)換成bool類型之后,就得到True。
bool(' ‘)的結(jié)果是True,一個(gè)空格也不能算作空字符串。
bool(”)才是False。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
Python?實(shí)現(xiàn)一個(gè)全連接的神經(jīng)網(wǎng)絡(luò)
這篇文章主要介紹了Python?實(shí)現(xiàn)一個(gè)全連接的神經(jīng)網(wǎng)絡(luò),文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-06-06
pytorch中nn.Flatten()函數(shù)詳解及示例
nn.Flatten是一個(gè)類,而torch.flatten()則是一個(gè)函數(shù),下面這篇文章主要給大家介紹了關(guān)于pytorch中nn.Flatten()函數(shù)詳解及示例的相關(guān)資料,需要的朋友可以參考下2023-01-01
Python實(shí)現(xiàn)SMTP郵件發(fā)送
這篇文章主要介紹了基于python實(shí)現(xiàn)SMTP發(fā)送郵件教程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06
Python實(shí)現(xiàn)查找數(shù)據(jù)庫最接近的數(shù)據(jù)
這篇文章主要介紹了Python實(shí)現(xiàn)查找數(shù)據(jù)庫最接近的數(shù)據(jù),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06
淺談pandas用groupby后對層級索引levels的處理方法
今天小編就為大家分享一篇淺談pandas用groupby后對層級索引levels的處理方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11

