[Tutor] variable from input?
Kent Johnson
kent_johnson at skillsoft.com
Tue Oct 26 02:38:38 CEST 2004
I'm hesitant to answer this question because I'm not sure if you understand
what you are asking for or if you are confused about variables and
assignment. If you just want to remember the name the user entered, it is
in the name variable and you can access it from there. That is the more
common usage:
>>> name = raw_input('What is your name? ')
What is your name? Kent
>>> print name
Kent
But if you really want to you can access the global namespace directly with
the globals() function. At first there is not much there:
>>> globals()
{'__builtins__': <module '__builtin__' (built-in)>, '__name__': '__main__',
'__doc__': None}
Assignment adds a new entry to the namespace:
>>> x = 3
>>> globals()
{'__builtins__': <module '__builtin__' (built-in)>, '__name__': '__main__',
'__doc__': None, 'x': 3}
It works the other way around as well - adding a key to globals() creates a
named variable:
>>> globals()['Rene'] = 'Rene'
>>> Rene
'Rene'
>>> name = raw_input('What is your name? ')
What is your name? Kent
>>> globals()[name] = name
>>> Kent
'Kent'
:-)
Kent
At 07:53 PM 10/25/2004 -0400, Rene Lopez wrote:
>is it possible to have the user input something with a raw_input
>command, and then base upon the input make that into the name of a
>variable?
>
>for example:
>
>answer = raw_input("what is your name?")
>
>user types in Rene, and some how we end up with a variable named Rene?
>--
>
>Rene
>_______________________________________________
>Tutor maillist - Tutor at python.org
>http://mail.python.org/mailman/listinfo/tutor
More information about the Tutor
mailing list