Python中的多个字符串替换

时间:2013-08-16 14:20:51

标签: python python-3.x

这是我的代码:

line = input('Line: ')
if 'a' in line:
  print(line.replace('a', 'afa'))
elif 'e' in line:
  print(line.replace('e', 'efe'))

显然没有完成,但我想知道,让我们说有一个'a'和'e',我将如何在同一个声明中替换它们?

4 个答案:

答案 0 :(得分:3)

为什么不:

import re

text = 'hello world'
res = re.sub('([aeiou])', r'\1f\1', text)
# hefellofo woforld

答案 1 :(得分:1)

line = input('Line: ')
line = line.replace('a', 'afa')
line = line.replace('e', 'efe')
line = line.replace('i', 'ifi')
line = line.replace('o', 'ofo')
line = line.replace('u', 'ufu')
print(line)

知道了!

答案 2 :(得分:1)

  

让我们说有一个'a'和'e',我将如何在同一个声明中替换它们?

您可以链接replace()来电:

print(line.replace('a', 'afa').replace('e', 'efe'))

答案 3 :(得分:0)

my_string = 'abcdefghij'
replace_objects = {'a' : 'b', 'c' : 'd'}
for key in replace_objects:
    mystring = mystring.replace(key, replace_objects[key])

如果您有大量的替换要做,并且您希望在一段时间后填充替换列表,那么使用字典非常容易。 Altho regexp或re是首选。