python - 问卷数据结构
问题描述
我正在尝试实现一种数据结构,可以轻松构建问卷。我的意思是:
假设第一个问题是“你来自哪个国家?” 您回答“美国”,因此下一个问题是“您来自哪个州?”
如果您要回答第一个问题,比如说“中国”,那么接下来它可能会问另一个问题。我需要实现什么样的数据结构来做这样的事情?
解决方案
我相信一棵树,每个节点的任何自然数 n 个节点,每个节点代表一个问题,都可以工作。使用一个函数ask
来获得答案,并决定下一个去哪个节点。这将是您编写代码的一个漫长的过程,但这已经足够了。您可以通过列表列表等的列表或字典的字典创建此树(在这种情况下,我会选择字典)。
例子:
tree = {"United States": {"Pizza": {}, "Taco": {}}, "China": {"Books": {}, "Movies", {}}}
,以此类推直到结束。字典的每一“层”代表一个问题的答案。
推荐阅读
- reactjs - 在 React/Django 项目中从用户输入存储 PDF 文件的位置
- python - 计算实际传递给 python 函数的参数数量
- azure - Azure 资源管理器何时需要 linuxProfile 属性?
- excel - Excel 应用程序未从 Outlook VBA 关闭
- sql - 在 SP_OAMETHOD 中发送 json 值
- c++ - 在 C++ 中构建内存分配和指向游戏对象的指针
- android - 由于 INSTALL_PARSE_FAILED_NO_CERTIFICATES,签名后无法在模拟器中运行应用程序
- wordpress - 你好!我在将产品添加到购物车时遇到了托管平台的问题
- python - 匹配最小可能的句子
- android - JUnit 日志消息出现在 Firebase 测试实验室目录中?