反转文本文件中单词的字母?

Reverse letters of words inside text file?

我想反转文本文件中单词的字母,例如:
输入 >

ABCD :    123 QA    
FGHK :    456 QB

输出>

DCBA :    321 AQ  
KHGF :    654 BQ

编辑:

我的一些不成功的解决方案:

 " ".join(str[::-1].split()[::-1])  
 ''.join([str[i] for i in xrange(len(str)-1, -1, -1)])

谢谢

你可以这样试试:

>>> my_string = "ABCD :    123 QA"
>>> "{} {}\t {} {}".format(*map(lambda x:x[::-1],my_string.split()))
'DCBA :\t 321 AQ'

您可以使用 re.split() :

>>> import re
>>> s ='ABCD :    123 QA'
>>> ''.join(map(lambda x: x[::-1],re.split(r'(\s?)',s)))
'DCBA :    321 AQ'

使用 r'(\s?)' 模式,您可以在任何空格后拆分字符串但保留它们,因此您将得到以下列表:

['ABCD', ' ', ':', ' ', '', ' ', '', ' ', '', ' ', '123', ' ', 'QA']

然后你可以用map对你的单词应用你的反向函数,最后加入它们。