Zhenhai Zhang wrote:
a: ['a', 1, 3, 4] c: ['c' '2' '3' '4']
The lack of commas here suggests that c is actually a numpy array rather than a list. Did you import copy from Numeric or numpy, by any chance? The following experiment reproduces your result: >>> import numpy >>> a = ['a', 1, 2, 3] >>> c = numpy.copy(a) >>> print c ['a' '1' '2' '3'] What's happening here is that numpy.copy is using the type of the first element to decide the type of the whole array, and then converting the rest of the elements to that type. If you want the standard Python copying behaviour, use copy.copy instead (or use a[:], which might be slightly more efficient). -- Greg -- http://mail.python.org/mailman/listinfo/python-list