gpt4 book ai didi

python - 在 Python 中存储字符串的好方法是什么?

转载 作者:太空宇宙 更新时间:2023-11-03 12:48:25 25 4
gpt4 key购买 nike

我正在用 Python 构建一个对话机器人。虽然我想从头开始生成尽可能多的文本,但我仍然需要一种方法来编目和存储一堆对话框片段字符串。理想情况下,我想在字符串中包含某种层次结构/分类。例如:

问候:


“哦,很高兴认识你 {0}”
“我叫鲍勃,你呢?”

调情:


“停下来”
“我脸红了”
“多么讨人喜欢”

等...

虽然我可以将这些存储在数据库中,但如果有不同的格式,人们可以轻松地手动编辑,那就太好了。文件格式? JSON?有这样的先例吗?

最佳答案

那要看你想怎么用了。如果字符串仅供 Python 使用,您应该考虑将它们存储在它们自己的 .py 文件中。是的,一个模块,但它也是一个简单的文本文件,碰巧可以被 Python 解释:)

许多项目使用 .py 文件作为配置文件 (Django) 并且导入其内容非常容易,因为您只需执行 import answer_strings 即可已经将它们放入变量或类中。

例如,您可以这样做:

#bot answers module

greetings = ["hello {0}", "what's up {0}"]
farewells = ["see you soon {0}", "nos vemos {0}"]
...

并能随机返回等价答案等

另一方面,如果这些文件也可以被 Javascript、Java、node.js 或 Python 以外的任何技术读取,那么应该使用更通用的格式,JSON、XML、YAML,随你便。

我认为这在文本文件(项目的资源)中比在数据库中更好,因为这种方式(如您所提到的)更可定制。我还建议使用包含语义 的格式。恕我直言,CSV 文件非常冷,只是将一堆数据转储到文件中。使用 XML、JSON 等,您可以将数据分组为“问候”、“告别”等类别。

不要忘记,既然您有多种选择,那么以模块化和解耦的方式构建您的代码会非常好。因此,如果您做出了决定并且在未来需要更改,它将尽可能无缝地完成。

希望这对您有所帮助!

关于python - 在 Python 中存储字符串的好方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22275843/

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