我有一个如下所示的文本文件:
AELSLAEM A3LYKM
AELSLAEM A3LYKM WRH7MT3 AELLHH WBRKAETHH
HHL TSMH7 LY
LW SMH7T
MN FD9LK
HHL TTKRM A3LY B
MN FD9LK AHRYD
AHNAE AHRYD MN FD9LK
MN FD9LK AHH7D9R LY
HHL LDYK H7JHZ
AENTDH6R QLYLAE
SAHNTDH6R HHNAE
MTAE YGHLQ AELMT6A3M
MTAE YFTH7 AELMT6A3M ......
我想在每个字符后添加一个空格:
字符= [AH,AE2,UW,EH,AE,B,T3,T,TH,JH,H7,X,D,DH,R,Z,S,SH,S9,D9,T6,DH6, A3,GH,F,Q,K,L,M,N,HH,W,Y,AA,AN,IH,EN,UN,2]
所以输出如下所示:
AE L S L AE M A3 L Y K M
AE L S L AE M A3 L Y K M W R H7 M T3 AE L L HH W B R K AE T HH
HH L T S M H7 L Y
L W S M H7 T
M N F D9 L K
HH L T T K R M A3 L Y B
M N F D9 L K AH R Y D
我最常遇到的问题是添加空格,例如,在D之后只有后跟数字或H ..我想在python或(如果可能的话)vim中执行此操作。任何人都可以为此提供帮助。谢谢!
答案 0 :(得分:0)
您可以尝试使用replace方法。因此,您使用for循环(或者如果您愿意,使用常规for循环)遍历字符数组,并说用字符加空格替换此字符的所有实例:
for chars in characters:
{
str = str.replace(chars, chars + ' ')
}
假设你在文件中读入一个名为str。
的变量答案 1 :(得分:0)
这对我有用,
import sys
try:
inp = open("input.txt", "r")
inp1 = inp.read()
inp.close()
except Exception, e:
print "File error:", e
sys.exit(-1)
print "\nFile Contents:\n", inp1
characters = ['AH', 'AE2', 'UW', 'EH', 'AE', 'B', 'T3', 'T', 'TH', 'JH', 'H7', 'X', 'D', 'DH', 'R', 'Z', 'S', 'SH', 'S9', 'D9', 'T6', 'DH6', 'A3', 'GH', 'F', 'Q', 'K', 'L', 'M', 'N', 'HH', 'W', 'Y', 'AA', 'AN', 'IH', 'EN', 'UN', '2']
for each in characters:
if each in inp1:
inp1= inp1.replace(each, each + " ")
print "\nOutput:\n", inp1