Mike Meyer wrote: > In <[EMAIL PROTECTED]>, M.N.A.Smadi <[EMAIL PROTECTED]> typed: > >>This has nothing to do with how the argument is passed. It is prob >>something wrong with str.pop in my python because when i run python and type >>import os >>import string >>x = '1 2 3' >>x.pop() >> >>i get the following error >>Traceback (most recent call last): >> File "<stdin>", line 1, in ? >>AttributeError: 'str' object has no attribute 'pop' > > > The only thing wrong with str.pop is that you're trying to invoke > it. The interpreter is telling you that string doesn't *have* a pop > method. The interpreter is right. Strings are immutable, so "pop" > doesn't make any sense for them. > > <mike > [...]
Just to hammer the point home: Python 2.4.1 (#1, May 27 2005, 18:02:40) [GCC 3.3.3 (cygwin special)] on cygwin Type "help", "copyright", "credits" or "license" for more information. >>> x = '1 2 3' >>> x.pop() Traceback (most recent call last): File "<stdin>", line 1, in ? AttributeError: 'str' object has no attribute 'pop' >>> x = [1, 2, 3] >>> x.pop() 3 >>> x.pop() 2 >>> x [1] >>> So if you genuinely have a string containing the values, split it onto a list first using something like x = x.split() regards Steve -- Steve Holden +44 150 684 7255 +1 800 494 3119 Holden Web LLC www.holdenweb.com PyCon TX 2006 www.pycon.org -- http://mail.python.org/mailman/listinfo/python-list