[英]If key contain substring in Python
我在dict中有另一種類型的鍵(也不需要鍵入值)
'PL-1/KK-1/FO-1'
'PL-1/KK-2/GH-3'
'PL-1/KK-2'
'PL-1/KK-1/FO-4'
我需要一個條件
if exist (key.split('/')[2])
do something
return data
else:
do something
return data
所需的輸出:在第一種情況下,所有鍵都輸入除'PL-1/KK-2'
以外'PL-1/KK-2'
條目。
python中是否有類似“ exist”的東西?
不,沒有“存在”運算符。
在您的情況下,您應該只測試斜線:
if key.count('/') >= 2:
# ...
如果您需要鑰匙的組件,請存儲並測試長度:
components = key.split('/')
if len(components) >= 2:
# ...
def has_key(i_dict, i_filter):
return any(k for k in i_dict.iterkeys() if i_filter(k))
# be it a dict called my_dict
# you could call it like
has_key(my_dict, lambda x: x.count("/") == 2)
# or
has_key(my_dict, lambda x: len(x.split("/"))==2)
這是一個小測試
>>> my_dict = {"a":1,"c":3}
>>> has_key(my_dict, lambda k:k=="a")
True
>>> has_key(my_dict, lambda k:k=="c")
True
>>> has_key(my_dict, lambda k:k=="x")
False
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.