Pierre Barbier de Reuille wrote:

[EMAIL PROTECTED] 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/
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to