这是一个简单的问题,因为我对 Python 3.5 还不太熟悉(实际上,这是我的第一种编程语言),而且我不知道如何高效地实现它。
我想创建一个小程序,在其中根据几个问题的结果计算出满意度查询。每个答案对应一个 int 值,该值会增加或减少满意度。
最后,程序计算出一个 int 满意度值,我想为其返回一个 str 文本。
我所做的 - 我真的认为这可以优化 - 对于每个值我都有这样的东西:
if satisfaction == 0:
print("not really satisfied")
elif satisfaction == 1:
print("kinda satisfied")
...等等。 我真的觉得它可以更好,所以我想我可以将形容词放入如下列表中:
satisfaction_list = ["not at all", "not really", "kinda", "very"]
并以此为己任。每个满意度值都将作为满意度列表中的程度之一返回...问题是:我不知道该怎么做。
我虽然可以制作两个列表,其中一个包含从 -x 到 +x 的满意度值(我们称之为 int_satisfaction_value),并以某种方式使其与满意度列表(我们可以将其重命名为 str_satisfaction_value)相关联,但我不知道如何去做这件事。
我的想法如下:
if satisfaction_value == int_satisfaction_value[0]
print(str_satisfaction_value[0])
但这并不能解决我的问题。相反,它只是将字符串“print”输入替换为列表一。
很抱歉这篇文章很长,我希望我说得足够清楚。如果您还有任何其他问题,我很乐意回答;感谢您的回复!
编辑:顺便说一下,我同意你的建议,无论是列表还是字典
最佳答案
使用字典,例如:
satdict = dict(enumerate(["not satisfied", "satisfied", "very satisfied"]))
satisfaction_value = 1
print(satdict[satisfaction_value])
'satisfied'
关于python - 在 python 3.5 中关联列表,我该怎么做?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43994665/