3
>>> n = ''.join(i for i in x if i.isdigit())
>>> n.isdigit()
True
>>> x.isdigit()
False
>>> previous = 0
>>> next = 100
>>> answer = 0
>>> for i in range(0,100):
... answer += int(n[previous:next])
... previous = next
... next += 100
...
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
ValueError: invalid literal for int() with base 10: ''
Pourquoi ai-je cette erreur? Comme vous pouvez le voir n est le chiffre ..Littéral invalide pour int avec base 10: ''
Eh bien, comme vous pouvez le voir, je l'ai-je retiré tout de la chaîne, mais les chiffres n = « » .join (i pour i dans x si i.isdigit()), ne pas faire le travail ? – Marijus
@Marijus La suppression de non-chiffres ne vous empêchera pas d'obtenir une chaîne vide. Une chaîne vide contient "seulement des chiffres", mais n'est pas un nombre entier. – marcog
C'est pourquoi j'ai utilisé la réponse + = int (n [précédent: suivant]) – Marijus