On 02/10/11 04:20, surya kasturi wrote:

for (i=0;i<5;i++)
      scanf("%d",&array[i]);
here we can give input of 5 numbers with a space in command prompt.

In Python we would normally read the entire string using raw_input()
then split the string into its constituent parts like:

inStr = raw_input('Type 5 numbers:')
array = [int(d) for d in inStr.split()]

list = [ [ ], [ ] ]
for i in range (0,2):
         for j in range (0, 2):
                  list[i].append ( int (raw_input()) )

here, I am expecting a list like
[ [1,2] , [3,4] ]

but when I give 1,2,3,4 with space in command prompt at once, it shows error.

That's because int() cannot convert '1 2 3 4'
into an integer. int() is like atoi() in C.

How do i overcome this problem?

first get a list of numbers then put them into the structure you want:

inStr = raw_input('Type 4 numbers:')
array = [int(d) for d in inStr.split()]
list = [ [array[:2], [array[2:4] ]

HTH

--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/

_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to