2012-06-12 3 views
0

Je me demandais si quelqu'un pouvait me donner des conseils sur ce code. Je l'ai fait en python mais je pense que je dois l'avoir en javascript comme pour un site web. Je suis nouveau à la programmation alors s'il vous plaît soyez gentil!mon code python - pour javascript?

Objectifs du site:

  • L'utilisateur devra répondre à 6 questions à choix multiples. (Q1 a 7 réponses possibles mais les autres n'en ont que 2). En fonction de leurs entrées, ils recevront un résultat (je viens de mettre les résultats comme intervalle (1 225) pour l'instant mais il y aura des résultats différents en fonction de l'entrée
  • Les résultats et les combinaisons d'entrées possibles sont tous fixes et ne changera pas

Je suis assez sûr que je ne l'ai pas fait la meilleure façon que je n'ai pas beaucoup d'expérience, mais il semble fonctionner jusqu'à présent.

Est-ce que le code semble ok? Do Pensez-vous que je serai en mesure de traduire cela en javascript assez facilement? Devrais-je Est-ce que le tableau des résultats/intrants est fixé d'une façon ou d'une autre, de sorte qu'il n'a pas besoin d'être élaboré par l'ordinateur à chaque fois ou est-ce acceptable?

Tout conseil ou aide est très apprécié.

#list of possible inputs 

list = [[23,24,25,26,27,28,29],["male","female"],["true","false"],["true","false"], 
["true","false"],["true","false"]] 

#make a list of outcomes 
outcome=[] 
for i in range(1,225): 
    outcome.append(i) 


#make a table of all possible list input combinations 
r=[[]] 
for e in list: 
    table = [] 
    for item in e: 
      for i in r: 
       table.append(i+[item]) 
    r = table 

#make a dictionary where the input is the key and outcome is the value 
adict = dict((str(r), outcome) for r, outcome in zip(r, outcome)) 

#dummy inputs as an example 
input1 = 27 
input2 = "male" 
input3 = "true" 
input4="true" 
input5="true" 
input6="true" 

#put all the inputs into one string & look up outcome in adict 
new_input = [] 
new_input.extend([input1,input2,input3,input4,input5,input6]) 
print adict.get(str(new_input)) 
+4

Y a-t-il une question ici? Dans tous les cas, vous pouvez écrire le côté serveur de votre site web dans n'importe quelle langue, et ce n'est pas une bonne pratique de traduire d'une langue à l'autre dans la plupart des cas - il en résulte un code unidiomatique. – Marcin

+3

s'il vous plaît ne nommez pas vos listes 'list' car elle remplace le type intégré – dm03514

+0

Marcin - c'est ma première tentative de codage moi-même alors je voulais juste que quelqu'un d'autre le voit et vérifie que je n'étais pas un idiot complet. dm03514 - bon point, va changer cela, merci – tessad

Répondre

0

Il n'est pas nécessaire de le réécrire en javascript; Essayez plutôt d'utiliser l'un des frameworks web Python comme Flask ou Django.

+0

excellent, merci! – tessad

Questions connexes