Help With map() *He says while pulling his hair out*

Nick Perkins nperkins7 at
Mon Jul 9 00:28:55 EDT 2001

"EricIDLE" <grayson-wilson at> wrote in message
news:pM927.657463$166.13605776 at
> Ok first off I have a wee problem with one of the examples in my book it
> as follows:
> s=""
> ls = string.split(s, '.')
> md = map(string.atoi, ls)
> Ok. well the problem is basically the whole thing. I know s=""
> is just defining the varible 's' with the numbers. But my first problem is
> after string.split in its argument I know what the S means but I dont know
> what the '.' means does that mean to remove all the periods?
> The second problem is that I dont quite grasp the map() function what
> exactly does it do, In its argument it says in lamens terms "Turn the
> ls into intergers" my problems is wasent it always intergers? I mean the
> varible ls contains ['12', '19', '6', '7', '12'] arent those intergers
> are numbers. Any ways if you could reply answering all the questions in
> whole or maybe just a few of em' it would be great.
> Thanks.

You should use the command prompt to play around
with things that you are not sure about.  ( if you don't, already )

The type(x) function is very useful,
as is the dir(x) fuction.
Also, a single underscore can be used to capture the result of the last
operation (see end of example).

Along with 'book learnin', interactive 'playing around' is the best way to
develop a clear picture of types and reference semantics, etc.  Plus, it's


>>> s = ""
>>> print s
>>> type(s)
<type 'string'>
>>> import string
>>> result = string.split(s,'.')
>>> print result
['12', '19', '5', '7', '12']
>>> type(result[0])
<type 'string'>
>>> result2 = map(string.atoi,result)
>>> print result2
[12, 19, 5, 7, 12]
>>> type(result2[0])
<type 'int'>
>>> string.atoi('12')
>>> type(_)
<type 'int'>


More information about the Python-list mailing list