type of simple object

Steve Holden steve at holdenweb.com
Wed Feb 2 07:41:00 EST 2005


Pierre Barbier de Reuille wrote:

> ajikoe at gmail.com a écrit :
> 
>> Thank you guys.
>>
>> My function should multiply every element  of a list, for example
>> "something"
>> and "something" can be an integer or another list.
>> If it deals with integer than it is ok, but
>> If it deals with list than it become false for example list*2 =
>> listlist, and what I really want is to mutlitply its member.
>> That's why I need to know the type of my data in "something".
> 
> 
> As stated by another comment, I would do something like :
> 
> def multiply(object, factor):
>   try:
>     return [ multiply(i,factor) for i in object ]
>   except TypeError:
>     return object*factor
> 
> This function will, recursively multiply a nested list of numbers by 
> "factor" ...
> 
As a matter of good practice it's usually considered unwise to shadow 
names of system types like "dict" and "object", though there wouldn't be 
any problems in this case except the infinite recursion. Which 
definitely *would* be a problem.

regards
  Steve
-- 
Meet the Python developers and your c.l.py favorites March 23-25
Come to PyCon DC 2005          http://www.python.org/pycon/2005/
Steve Holden                           http://www.holdenweb.com/



More information about the Python-list mailing list