[英]python conditional dictionary and replace
我有一個條件字典,當通過 function 識別字符串時,它返回該字典的鍵。
dict是“myDict”,它將與列表“lookup”一起使用,找到其中存在的單詞,並返回該列表的字典鍵,將其添加到該名稱的末尾。
我的代碼:
myDict = {'NESTLE':
['NESFIT', 'NESCAU', 'DOIS FRADES', 'MOCA', 'KIT KAT', 'NESQUIK', 'ALPINO', 'LEITE CONDENSADO MOCA'
'CHAMYTO', 'NINHO', 'MOLICO', 'CHAMBINHO', 'CHANDELLE', 'BONO', 'PASSATEMPO', 'KITKAT', 'CLASSIC'],
'all_names': ['rodis', 'Stone', 'abx']}
def search(myDict, lookup):
for key, value in myDict.items():
for v in value:
if lookup in v:
return key
lookup = ['NESCAU', 'Confeito coberto de chocolate ao leite NESCAU Ball', 'NESCAU EM PO', 'Stone']
lookup2 = [str(x).split(' ') for x in lookup]
for x in range(0, len(lookup)):
finder = search(myDict, lookup[x])
print(finder)
NESTLE 無 無 all_names
我到了這里,但是無法使用列表末尾的字典鍵執行此 output,並且它沒有搜索其中包含的所有單詞,因此我想要這個 output:
output_lookup = ['NESCAU NESTLE', 'Confeito coberto de chocolate ao leite NESCAU Ball NESTLE', 'NESCAU EM PO NESTLE', 'Stone all_names']
我改變了你的代碼。
我添加了查找字符串的拆分。
myDict = {'NESTLE':
['NESFIT', 'NESCAU', 'DOIS FRADES', 'MOCA', 'KIT KAT', 'NESQUIK', 'ALPINO', 'LEITE CONDENSADO MOCA'
'CHAMYTO', 'NINHO', 'MOLICO', 'CHAMBINHO', 'CHANDELLE', 'BONO', 'PASSATEMPO', 'KITKAT', 'CLASSIC'],
'all_names': ['rodis', 'Stone', 'abx']}
def search(myDict, lookup):
for key, value in myDict.items():
for v in value:
# if lookup in v:
if v in lookup.split(' '):
return key
lookup = ['NESCAU', 'Confeito coberto de chocolate ao leite NESCAU Ball', 'NESCAU EM PO', 'Stone']
lookup2 = [str(x).split(' ') for x in lookup]
for x in lookup:
finder = search(myDict, x)
print(f"{x} {finder}")
這是我得到的 output
NESCAU NESTLE
Confeito coberto de chocolate ao leite NESCAU Ball NESTLE
NESCAU EM PO NESTLE
Stone all_names
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.