如何从python中的queryset对象中提取值?

时间:2017-10-24 16:10:48

标签: python django forms list django-queryset

我正在尝试将django中的测验值相互比较。我正在将POST数据用于对象数据并尝试相互比较。

当前代码:

answerList = []
answerList2 = []
for i in Question.objects.filter(related_quiz = examid):
    answerList.append(i.answer)

form = EditQuizForm()
form = EditQuizForm(request.POST)

if request.method == "POST":
    form = EditQuizForm(request.POST)
    submittedObject = request.POST.copy()
    newList = (dict(submittedObject.lists()))
    values = newList.values()
    for i in values:
        answerList2.append(i)

    print(answerList)
    print(answerList2)

返回值:

      ['A', 'D']
      [['A'], ['D']]

然而,我不能迭代这些来比较它们,因为它们不一样。我不知道如何让answerList2看起来像answerList1,所以我可以比较值。任何帮助都会受到赞赏,因为我对python / django来说相当新。

1 个答案:

答案 0 :(得分:1)

您可以循环并比较answerList的值和answerList2的索引0的值

def compareLists(answerList, answerList2):
   for i in range(len(answerList)):
      if answerList[i] != answerList2[i][0]:
         break
   else:
      return True
   return False

当一个项目不同时,循环将被中断并且该函数将返回False。否则它不会以break退出并返回True。

我希望我有所帮助:)