fonction raw_input en Python

117

Quelle est la raw_inputfonction? Est-ce une interface utilisateur? Quand l'utilisons-nous?

Janezcka
la source
6
Utilisez input()plutôt. La fonction raw_inputn'est plus incluse dans python.
Robino

Réponses:

142

Il présente une invite à l'utilisateur (facultative argde raw_input([arg])), obtient l'entrée de l'utilisateur et renvoie les données entrées par l'utilisateur dans une chaîne. Consultez la documentation pour raw_input().

Exemple:

name = raw_input("What is your name? ")
print "Hello, %s." % name

Cela diffère du fait input() que ce dernier essaie d'interpréter l'entrée donnée par l'utilisateur; il est généralement préférable d'éviter input()et de s'en tenir à raw_input()un code d'analyse / conversion personnalisé.

Remarque: ceci est pour Python 2.x

Andrea Spadaccini
la source
5
Pour Python 3: name = input ("Quel est votre nom?") Print ("Bonjour,% s."% Name)
Trevor McCormick
4

La fonction "input" convertit l'entrée que vous entrez comme s'il s'agissait de code python. "raw_input" ne convertit pas l'entrée et prend l'entrée telle qu'elle est donnée. Il est conseillé d'utiliser raw_input pour tout. Usage:

>>a = raw_input()
>>5
>>a
>>'5'
Sreenivas
la source
4

raw_input est une forme d'entrée qui prend l'argument sous la forme d'une chaîne tandis que la fonction d'entrée prend la valeur en fonction de votre entrée. Disons que a = input (5) renvoie a comme un entier avec la valeur 5 alors que a = raw_input (5) renvoie a comme une chaîne de "5"

Nishant Kohli
la source
1

Un autre exemple de méthode, pour mélanger l'invite à l'aide de print, si vous avez besoin de simplifier votre code.

Format:-

x = raw_input () - Cela renverra l'entrée utilisateur sous forme de chaîne

x = int (raw_input ()) - Récupère le numéro d'entrée sous forme de chaîne de raw_input (), puis le convertit en un entier en utilisant int ().

print '\nWhat\'s your name ?', 
name = raw_input('--> ')
print '\nHow old are you, %s?' % name,
age = int(raw_input())
print '\nHow tall are you (in cms), %s?' % name,
height = int(raw_input())
print '\nHow much do you weigh (in kgs), %s?' % name,
weight = int(raw_input())

print '\nSo, %s is %d years old, %d cms tall and weighs %d kgs.\n' %(
name, age, height, weight)
Kapil Marwaha
la source
-1

Si je laisse raw_input comme ça, pas de Josh ou quoi que ce soit d'autre. C'est une variable, je pense, mais je ne comprends pas son rouleau :-(

La fonction raw_input vous demande une entrée et la renvoie sous forme de chaîne. Cela a certainement fonctionné pour moi. Vous n'avez pas besoin d'inactivité. Ouvrez simplement une "invite DOS" et exécutez le programme.

Voici à quoi cela ressemblait pour moi:

C:\temp>type test.py
print "Halt!"
s = raw_input("Who Goes there? ")
print "You may pass,", s

C:\temp>python test.py
Halt!
Who Goes there? Magnus
You may pass, Magnus

J'ai tapé mon nom et j'ai appuyé sur [Enter] après que le programme ait imprimé "Who Goes there?"

Loller
la source