On Fri, Aug 27, 2010 at 10:51 PM, Jussi Piitulainen <jpiit...@ling.helsinki.fi> wrote: > MRAB writes: >> On 27/08/2010 20:43, Jussi Piitulainen wrote: >>> Dave Angel writes: >>>> Jussi Piitulainen wrote: >>>>> Agreed. But is there any nicer way to spell .reverse than [::-1] >>>>> in Python? There is .swapcase() but no .reverse(), right? >>>>> >>>> There can't be a .reverse() method on string, because it's >>>> immutable. You could use >>>> >>>> "".join(reversed(pal)) >>>> >>>> but I'd prefer pal[::-1] as I said earlier. >>> >>> There could easily be a .reverse() method on strings. It would >>> return the reversed string, like .swapcase() returns the swapcased >>> string. >> >> Lists have a .reverse method, but it's an in-place reversal. In >> order to reduce confusion, a string method which returned the string >> reversed would be better called .reversed(). > > Yes, agreed. > > Meanwhile, I have decided to prefer this: > > def palindromep(s): > def reversed(s): > return s[::-1] > return s == reversed(s) > -- > http://mail.python.org/mailman/listinfo/python-list >
That seems like a bit of overkill... Why would you want to define a function in a function for something trivial like this? Just def palindrome(s): return s[::-1] will do fine. Of course, you can stick the inner function in a library somewhere if you like. Regards, Richard -- http://mail.python.org/mailman/listinfo/python-list