gpt4 book ai didi

Python:字典中的可搜索字典?

转载 作者:行者123 更新时间:2023-11-28 19:22:54 25 4
gpt4 key购买 nike

我是 Python 的新手,不习惯处理这种东西。

我写的代码:

search = str.lower(raw_input("What are you looking for?" + " " ))

knowledge = {"apple": 123, "test" : "cats"}

def return_the_input(search):
if search in knowledge:
print knowledge.get(search)
else:
print "No."
return_the_input(search)

所以我想让它做的是问你你在找什么 (apple),然后 apple 会显示类似于 unix 中的 Ls 命令的内容。所以它看起来像这样:

“你在找什么?” --输入苹果。然后苹果会打印出其他值,比如

黄油酱零食

然后会问“下一步是什么?” --输入黄油

我所有关于苹果酱的信息都会显示出来。

所以我在代码中设置为

knowledge = {"apple":{"butter": "info on butter here", "sauce": "info on sauce here"}, "cats":{et cetera}}

然后以某种方式采取行动以获得我想要的格式?我假设可能使用某种 For 循环,或者只是打印语句?

最佳答案

您的想法会奏效。但是如果一个项目属于两个类别呢?更好的解决方案是存储所有知识片段,然后使用数据结构将搜索词映射到知识。

knowledge = [
[("apple", "butter"), "made from cooked down apple sauce"],
[("peanut", "butter"), "made from crushed peanuts"],
]

def make_terms_from_knowledge(info):
search_terms = {}

for n, item in enumerate(info):
for i in item[0]:
search_terms.setdefault(i, []).append(n)

return search_terms

terms = make_terms_from_knowledge(knowledge)
print terms["butter"]

for entry in terms["butter"]:
print knowledge[entry][1]

只要知识长度发生变化,您就需要重新生成术语。这非常简单,但应该让您思考其他途径并展示一些 Python 技巧。

关于Python:字典中的可搜索字典?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20555940/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com