Je demande à mon utilisateur des informations et j'ai tendance à avoir beaucoup de champs de saisie et je le trouve vraiment répétitif pour continuer à utiliser la ligne d'entrée après la ligne.
Code actuel: P>
a= input(str("a value: "))
b= input(str("b value: "))
c= input(str("multiple c values: ")).split(" ")
3 Réponses :
Notez que si vous avez un cas spécial ( puis utiliser Si vous ne voulez pas utiliser de dict et que vous devez utiliser C code> ici), vous devez le traiter séparément de toute façon. Ignorer des cas spéciaux Vous pouvez utiliser un dict le long de ces lignes: val ['a'] code> a code> dans votre code . P> val [...] code> partout, vous pouvez utiliser cette ligne plutôt p> globals()[key] = input(key+(" value: "))
Vous pouvez utiliser un dictionnaire pour stocker l'entrée où les clés sont des variables et des valeurs. Ensuite, dans la boucle, remplacez les valeurs / questions avec les entrées
code d'exemple: p> sortie: p>
J'aime ça :) juste pour ralentir à taper la mine: D
Et si la valeur souhaitée pour a code> est 'aa a' code>?
C'est le problème pendant que je saisi le code ci-dessus, il doit simplement manipuler la liste et utiliser .join ()
diviser votre code dans les questions et le questionnement, comme celui-ci:
# question and whether it's a multi one
questions={"a": False,
"b": False,
"c": True}
answers={}
for k, v in questions.items():
q="multiple {} values: " if v else "{} value: "
answers[k]=input(q.format(k))
print(answers)
Écrivez une fonction qui prend une liste d'invites et de noms et renvoie un dictionnaire qui mappe les noms des réponses.
Il n'y a pas besoin d'envelopper un
str code> littéral dans un appel àstr code>.