Comment obtenir une liste des numéros d'entrée et de calculer la somme?
mylist = int(raw_input('Enter your list: '))
total = 0
for number in mylist:
total += number
print "The sum of the numbers is:", total
- Un int n'est pas une liste. Un int est pas itératif.
Vous devez vous connecter pour publier un commentaire.
Façon correcte de faire de même est:
Pour trouver la somme vous avez besoin de convertir l'espace séparé de caractères dans
int
individuellement comme fait ci-dessus en utilisant carte fonction.int
déjà, donc la concaténation de chaîne partie est incorrecte.map
)+
par opposition àstr.format
?print "The sum is :"+2
, il ne fonctionne pas et permettrait de lever une erreur, les chaînes ne peuvent être concaténées pour des chaînes si les 2 énoncés de travail:print "The sum is :"+"2"
ouprint "The sum is :"+str(2)
, dans la réponse au-dessus de la2
est remplacé parsum
variableVous n'êtes pas la création d'une liste. Vous êtes à la création d'une chaîne de caractères avec votre nom d'utilisateur d'entrée et de tenter de les convertir cette chaîne en type int.
Vous pouvez faire quelque chose comme ceci:
De sortie:
Qu'ai-je fait?
J'ai changé votre première ligne en:
Cette accepte la saisie de l'utilisateur comme une chaîne séparée par des virgules. Il convertit tous les éléments de cette chaîne en un entier (int). Il le fait en utilisant
split
sur la chaîne à chaque virgule.Cette méthode échoue si l'utilisateur tape un non-entier ou ils ne sont pas séparées par des virgules à l'entrée.
Il semble que vous tentez de convertir une chaîne de chiffres qui sont les plus susceptibles ressemble à ceci(vous n'avez jamais spécifié le format d'entrée):
OU ce
à un
int
. Naturellement, cela ne fonctionne pas comme un seul numéro à la fois pourrait être converti comme cela. Par exempleint('45')
de travail, maisint('12 34, 56')
ne sera pas.Je pense que ce que vous devez faire est quelque chose comme ceci:
Ce n'est pas le plus compact de réponse, mais je pense qu'il casse vers le bas pour vous permettre de mieux comprendre. La compacité peut venir plus tard.
si vous voulez stocker les valeurs dans la liste, créer une liste. également ajouter une boucle pour l'utilisateur entre les valeurs. vous pouvez affecter une entrée pour briser la boucle ou ajouter un compteur.
ou sans liste
résultat