3 回答

TA贡献1871条经验 获得超8个赞
我假设您有某种将字符串转换为此类答案的函数,或者可能是字典。否则,解决该问题的方法将超出NLP当前的进展范围。
def ask_question_and_get_response(question=None):
answer = input(question)
return answer
我还必须假设您有一种方法可以转换原始问题,例如“您叫什么名字?” ,然后用户可能会问您的机器人“我叫什么名字?” 。让该函数如下所示:
def get_reflex_question(question):
<your implementation>
return reflex_question
有了这两个选项,我们可以创建一个文件(如果尚不存在),并向其中写入可以解释为Python代码的文件。
def make_code(answer, reflex_question)
with open("filename", "a") as file:
file.write("\n")
file.write("if userBoxAsks == %s:\n\t" % (reflex_question))
file.write("print(answer)")
它将输出代码到您的命名文件中。要运行该文件,您可以使用subprocess模块(请阅读文档),或简单地将您的文件作为模块本身导入。每当您更新文件时,都可以重新加载导入,以便新代码也可以运行。在Python3.x中,您可以importlib.reload(filename)刷新导入。
添加回答
举报