Malheureusement, Raw_Input ne fait pas ce dont j'en ai besoin pour faire. Ce que j'essaie de faire est d'obtenir Totprimes = tout ce que je tape à l'invite. Si je remplace en comptant
pendant le compte <50 code> Ce script fonctionne. Si je tape 50 dans l'invite, ce script ne fonctionne pas, j'ai peur Raw_Input n'est pas la fonction que je cherche à utiliser? Voici un extrait de mon code:
6 Réponses :
faire Raw_Input code> vous donne une chaîne que vous devez convertir en entier ou à flotteur avant de faire une comparaison numérique. P> P>
Bien qu'il soit préférable de faire cette conversion avant i> la boucle et de l'enregistrer comme une variable locale. Sinon, vous serez inutilement appelant int code> à chaque fois autour de la boucle que vous faites la comparaison.
@ncoghlan vous avez raison. J'ai écrit de cette façon de montrer le problème condensé dans une ligne. Je l'ai mis à jour à la version plus efficace que vous référez.
Vous devez lancer des topprimes dans un Int comme ceci:
integer = int(totPrimes)
Vous devez juste convertir votre entrée brute dans un entier. Pour votre code, changez simplement votre code comme suit:
Utilisez l'entrée alors. P>
Entrée RAW Renvoie la chaîne. P>
entrée renvoie int. p>
Non, entrée code> dans Python 2 évalue l'expression. Si vous entrez une expression filtrante, elle retournera une chaîne. Si vous entrez une expression numérique, il retournera un nombre (flotteur ou INT en fonction de votre exactitude.
La fonction RAW_Input renvoie toujours une "chaîne" type Raw_Input Docs A >, nous devons donc convertir dans ce cas le type code> «code>« chaîne »à un type« int »ou« flotteur »comme celui-ci: Vous pouvez les combiner Comme ceci: p> afin de comparer les choses dans Python Vous pouvez utiliser Essayer / Sauf pour protéger votre programme. Gestion des exceptions P> pour les personnes prenant Le cours "Programmation pour tout le monde" Vous pouvez prendre en heures et évaluer cette voie. La déclaration IF / SNÈS que vous devriez essayer de comprendre. p> p> compter
en comptage
Vous devez modifier chaque numéro en "HRS" ou "Taux". p>
Par exemple: 40 * 10.50 + (H-40) * 10.50 * 1.5 code> est faux,
40 * r + (H-40) * R * 1.5 code> est juste . P>
Envisagez de changer le titre sur quelque chose de plus adéquat. P.e.'problème avec Raw_Input lisant un numéro ', ou similaire.
FYI, c'est un problème dans Python 2.x, car vous pouvez comparer des objets de différents types. Dans Python 3.x, il augmentera un
TypeError: Types non commandables Code>.