1

这是我的代码:

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

显然还没有完成,但我想知道,假设有一个“a”和一个“e”,我将如何在同一个语句中替换它们?

4

4 回答 4

3

为什么不:

import re

text = 'hello world'
res = re.sub('([aeiou])', r'\1f\1', text)
# hefellofo woforld
于 2013-08-16T14:31:07.143 回答
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)

知道了!

于 2013-08-16T14:24:19.453 回答
1

假设有一个“a”和一个“e”,我将如何在同一个语句中替换它们?

您可以链接replace()调用:

print(line.replace('a', 'afa').replace('e', 'efe'))
于 2013-08-16T14:25:57.970 回答
0
my_string = 'abcdefghij'
replace_objects = {'a' : 'b', 'c' : 'd'}
for key in replace_objects:
    mystring = mystring.replace(key, replace_objects[key])

如果您有大量替换要做,并且您想在一段时间后填充替换列表,那么使用字典很容易。Altho regexp orre是首选。

于 2013-08-16T14:31:15.967 回答