python在某些簇或字符后添加空格

时间:2016-11-29 03:55:00

标签: python encryption vim separator

我有一个如下所示的文本文件:

  

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中执行此操作。任何人都可以为此提供帮助。谢谢!

2 个答案:

答案 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