Troubles on showing results in a questionair python

Hi! I need to make a questionnaire with Python for school. Now I’m having so much trouble doing so, massive respect for people who are good at this. Crazy. Anyway, I’m having to most trouble with this part, the results. This will be at the end of the questionnaire. This is what I have at the moment. Even when I reply to the questions with a 4 or 5 (Likert scale) it still says low. Even though it obviously should be high. I think the problem lies with the score[0,0,0,0,0].

Could someone help me out? That would really be great. Thanks!

antwoorden = [
  School_antwoord1,
  School_antwoord2,
  School_antwoord3,
  School_antwoord4,
  School_antwoord5,
  School_antwoord6,
  School_antwoord7,
  School_antwoord8,
  School_antwoord9,
  School_antwoord10,
  School_antwoord11,
  School_antwoord12,
  School_antwoord13,
  School_antwoord14,
  School_antwoord15,
  School_antwoord16,
  School_antwoord17,
  School_antwoord18,
  School_antwoord19,
  School_antwoord20,
  School_antwoord21,
  School_antwoord22,
  School_antwoord23,
  School_antwoord24,
  School_antwoord25,
  Capac_antwoord1,
  Capac_antwoord2,
  Capac_antwoord3,
  Capac_antwoord4,
  Capac_antwoord5,
  Sociaal_antwoord1,
  Sociaal_antwoord2,
  Sociaal_antwoord3,
  Sociaal_antwoord4,
  Sociaal_antwoord5,
  Sociaal_antwoord6,
  Sociaal_antwoord7,
  Sociaal_antwoord8,
  Sociaal_antwoord9,
  Sociaal_antwoord10,
  Sociaal_antwoord11,
  Sociaal_antwoord12,
  Sociaal_antwoord13,
  Sociaal_antwoord14,
  Sociaal_antwoord15,
  Sociaal_antwoord16,
  Sociaal_antwoord17,
  Sociaal_antwoord18,
  Sociaal_antwoord19,
  Sociaal_antwoord20,
  Sociaal_antwoord21,
  Sociaal_antwoord22,
  Sociaal_antwoord23,
  Sociaal_antwoord24,
  Sociaal_antwoord25,
  Sociaal_antwoord26,
  Sociaal_antwoord27,
  Sociaal_antwoord28,
  Sociaal_antwoord29,
]
antwoorden = [
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
]
score = [
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
  0,
]
score_school = (
  score[1]
  + score[2]
  + score[3]
  + score[4]
  + score[5]
  + score[6]
  + score[7]
  + score[8]
  + score[9]
  + score[10]
  + score[11]
  + score[12]
  + score[13]
  + score[14]
  + score[15]
  + score[16]
  + score[17]
  + score[18]
  + score[19]
  + score[20]
  + score[21]
  + score[22]
  + score[23]
  + score[24]
  + score[25]
)
score_capac = score[1] + score[2] + score[3] + score[4] + score[5]
score_sociaal = (
  score[1]
  + score[2]
  + score[3]
  + score[4]
  + score[5]
  + score[6]
  + score[7]
  + score[8]
  + score[9]
  + score[10]
  + score[11]
  + score[12]
  + score[13]
  + score[14]
  + score[15]
  + score[16]
  + score[17]
  + score[18]
  + score[19]
  + score[20]
  + score[21]
  + score[22]
  + score[23]
  + score[24]
  + score[25]
  + score[26]
  + score[27]
  + score[28]
  + score[29]
)
print("De resultaten:")
print()
# score van faalangst op school
print("Je score op faalangst op school is:" + str(score_school))
if score_school > 120:
  print(
    "Je score is sterk verhoogd. Dit houd in dat je vaak faalangst ervaart terwijl je op school zit. Je hebt mogelijk veel negatieve gedachtes, en vind toetsen spannend."
  )
elif score_school > 75:
  print(
    "Je score is matig verhoogd. Dit betekend dat je regelmatig last hebt van faalangst op school. Mogelijk heb je soms spanning voor je een toets moet maken, en lever je sommige opdrachten laat in omdat je bang bent voor fouten. "
  )
else:
  print("Je score is laag. Dit houdt in dat je weinig spanning ervaart op school.")
print()

Could you please put your code in a code block by doing:

` ``py

`` ` 

antwoorden = [School_antwoord1, School_antwoord2, School_antwoord3, School_antwoord4,School_antwoord5, School_antwoord6, School_antwoord7, School_antwoord8, School_antwoord9, School_antwoord10, School_antwoord11, School_antwoord12,School_antwoord13, School_antwoord14, School_antwoord15, School_antwoord16,School_antwoord17, School_antwoord18, School_antwoord19, School_antwoord20,School_antwoord21, School_antwoord22, School_antwoord23, School_antwoord24,School_antwoord25, Capac_antwoord1, Capac_antwoord2, Capac_antwoord3,Capac_antwoord4, Capac_antwoord5, Sociaal_antwoord1, Sociaal_antwoord2,Sociaal_antwoord3, Sociaal_antwoord4, Sociaal_antwoord5, Sociaal_antwoord6,Sociaal_antwoord7, Sociaal_antwoord8, Sociaal_antwoord9, Sociaal_antwoord10,Sociaal_antwoord11, Sociaal_antwoord12, Sociaal_antwoord13,Sociaal_antwoord14, Sociaal_antwoord15, Sociaal_antwoord16,Sociaal_antwoord17, Sociaal_antwoord18, Sociaal_antwoord19,Sociaal_antwoord20, Sociaal_antwoord21, Sociaal_antwoord22, Sociaal_antwoord23, Sociaal_antwoord24, Sociaal_antwoord25,Sociaal_antwoord26, Sociaal_antwoord27, Sociaal_antwoord28,Sociaal_antwoord29]
antwoorden = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
score = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
#for z in range(50):
 # if antwoorden[z] <= 1:
   # score[z] = 1
 # elif antwoorden[z] == 2:
#    score[z] = 2
#  elif antwoorden[z] == 3:
#    score[z] = 2
#  else:
#    score[z] = 3
#  break
score_school = score[1] + score[2] + score[3] + score[4] + score[5] + score[6] + score[7] + score[8] + score[9] + score[10] + score[11] + score[12] + score[13] + score[14] + score[15] + score[16] + score[17] + score[18] + score[19] + score[20] + score[21] + score[22] + score[23] + score[24] + score[25]
score_capac = score[1] + score[2] + score[3] + score[4] + score[5]
score_sociaal = score[1] + score[2] + score[3] + score[4] + score[5] + score[6] + score[7] + score[8] + score[9] + score[10] + score[11] + score[12] + score[13] + score[14] + score[15] + score[16] + score[17] + score[18] + score[19] + score[20] + score[21] + score[22] + score[23] + score[24] + score[25] + score[26] + score[27] + score[28] + score[29]
print("De resultaten:")
print()
# score van faalangst op school
print("Je score op faalangst op school is:" + str(score_school))
if score_school > 120:
  print("Je score is sterk verhoogd. Dit houd in dat je vaak faalangst ervaart terwijl je op school zit. Je hebt mogelijk veel negatieve gedachtes, en vind toetsen spannend.")
elif score_school > 75:
  print("Je score is matig verhoogd. Dit betekend dat je regelmatig last hebt van faalangst op school. Mogelijk heb je soms spanning voor je een toets moet maken, en lever je sommige opdrachten laat in omdat je bang bent voor fouten. ")
else: 
  print("Je score is laag. Dit houdt in dat je weinig spanning ervaart op school.")

@MiloCat got it! I hope this is better!

3 Likes

Yes the problem lies on score=[0,0,0,0,0,0,0……]
in the lower code it directly takes the 0s into their init value. Class score takes those 0s and add them together, which made it to become 0
0<75<120 so 0 is low and class score is low

Uncomment your loop that calculates score from antwoorden

#for z in range(50):
#  if antwoorden[z] <= 1:
#    score[z] = 1
#  elif antwoorden[z] == 2:
#    score[z] = 2
#  elif antwoorden[z] == 3:
#    score[z] = 2
#  else:
#    score[z] = 3
#  break

This part of your program would iterate over each response in antwoorden and set a corresponding score in score based on the value of the response. If it were uncommented and didn’t have the break statement (you don’t need that), it would update all values in score based on the associated antwoorden.

2 Likes