allow for unanswered questions
This commit is contained in:
parent
bf948e12b7
commit
13d48b6ab0
2 changed files with 19 additions and 2 deletions
|
@ -33,9 +33,13 @@ Responses
|
|||
|
||||
>>> from cybertools.knowledge.survey.questionnaire import Response
|
||||
>>> resp01 = Response(quest, 'john')
|
||||
|
||||
>>> resp01.values = {qu01: 2, qu02: 1, qu03: 4}
|
||||
|
||||
It's possible to leave some of the questions unanswered.
|
||||
|
||||
>>> resp02 = Response(quest, 'john')
|
||||
>>> resp02.values = {qu01: 2, qu03: 4}
|
||||
|
||||
Now let's calculate the result for resp01.
|
||||
|
||||
>>> res = resp01.getResult()
|
||||
|
@ -45,6 +49,11 @@ Now let's calculate the result for resp01.
|
|||
fi01 2.7
|
||||
fi02 0.7
|
||||
|
||||
>>> res = resp02.getResult()
|
||||
>>> for fi, score in res:
|
||||
... print fi.text, score
|
||||
fi03 4.0
|
||||
fi01 2.4
|
||||
|
||||
Grouped Feedback Items
|
||||
======================
|
||||
|
@ -59,3 +68,9 @@ Grouped Feedback Items
|
|||
>>> for qugroup, fi, score in res:
|
||||
... print fi.text, round(score, 2)
|
||||
fi02 0.58
|
||||
|
||||
>>> res = resp02.getGroupedResult()
|
||||
>>> for qugroup, fi, score in res:
|
||||
... print fi.text, round(score, 2)
|
||||
fi03 0.75
|
||||
|
||||
|
|
|
@ -97,7 +97,9 @@ class Response(object):
|
|||
for qugroup in self.questionnaire.questionGroups:
|
||||
score = scoreMax = 0.0
|
||||
for qu in qugroup.questions:
|
||||
value = self.values.get(qu, 0.0)
|
||||
value = self.values.get(qu)
|
||||
if value is None:
|
||||
continue
|
||||
if qu.revertAnswerOptions:
|
||||
value = qu.answerRange - value - 1
|
||||
score += value
|
||||
|
|
Loading…
Add table
Reference in a new issue