Sunday, December 18, 2011

User Input on Python during Runtime

Eventually, we want interactivity when executing Python script. We want user to give input for some variable. It'll useful for, lets call, application form where user have to input her/his name, age, etc. On math field, user will have flexibility to input the function and range of variable used to computation.



There is raw_input command and input command we can used.

raw_input command will translate all we type to string, while input command treat it as command

Here difference between the two

raw_input
x=raw_input('type anything \n')
print 'you typed ', x

Execute it

Nugrohos-MacBook-Pro:python nugroho$ python input.py 
type anything 
a
you typed  a
Nugrohos-MacBook-Pro:python nugroho$ python input.py 
type anything 
12
you typed  12
Nugrohos-MacBook-Pro:python nugroho$ python input.py 
type anything 
sin(x)+x**2   
you typed  sin(x)+x**2
Nugrohos-MacBook-Pro:python nugroho$ 

input
c='sin(x)+x**2'
me='Hello folks, Aravir here'
x=input('type anything \n')
print 'you typed ', x 

Execute it
Nugrohos-MacBook-Pro:python nugroho$ python input.py 
type anything 
a
Traceback (most recent call last):
  File "input.py", line 3, in 
    x=input('type anything \n')
  File "", line 1, in 
NameError: name 'a' is not defined
Nugrohos-MacBook-Pro:python nugroho$ python input.py 
type anything 
12
you typed  12
Nugrohos-MacBook-Pro:python nugroho$ python input.py 
type anything 
sin(x)+x**2   
Traceback (most recent call last):
  File "input.py", line 3, in 
    x=input('type anything \n')
  File "", line 1, in 
NameError: name 'sin' is not defined
Nugrohos-MacBook-Pro:python nugroho$ python input.py 
type anything 
c
you typed  sin(x)+x**2
Nugrohos-MacBook-Pro:python nugroho$ python input.py 
type anything 
me
you typed  Hello folks, Aravir here
Nugrohos-MacBook-Pro:python nugroho$