reverse words 中包含标点符号 “, 。 ! ?”怎么做# JobHunting - 待字闺中S*C2015-03-29 07:031 楼Amazon面试题, leetcode变种string 有标点符号,我不希望标点符号被倒过来, 例如 “abc, def” ,结果是“cba, def”,给的标点符号包括 “, 。 ! ?”
c*o2015-03-29 07:032 楼你给的结果有问题吧。另外你怎么处理空格就怎么处理标点符号【在 S*******C 的大作中提到】: Amazon面试题, leetcode变种: string 有标点符号,我不希望标点符号被倒过来, 例如 “abc, def” ,结果是“: cba, def”,给的标点符号包括 “, 。 ! ?”
t*52015-03-29 07:034 楼nvm 有bug 把generator改成while loop就好了要in place的话就只有用最傻瓜的一个index一个index的看了import redef reverse(string):words = map(lambda x: x[::-1], re.split('\W+', string))symbol = re.split('\w+', string)[1:-1]combinedResult = list(generateNewString(iter(words), iter(symbol)))return ''.join(combinedResult)def generateNewString(words, symbol):while True:yield words.next()yield symbol.next()print reverse('abc, def')