是否有更短的方法来编写以下代码?
my_string = my_string.replace('A', '1')
my_string = my_string.replace('B', '2')
my_string = my_string.replace('C', '3')
my_string = my_string.replace('D', '4')
my_string = my_string.replace('E', '5')
请注意,我不需要替换那些确切的值;我只是在寻找一种将 5+ 行变成少于 5 行的方法
最佳答案
看起来是使用循环的好机会:
mapping = { 'A':'1', 'B':'2', 'C':'3', 'D':'4', 'E':'5'}
for k, v in mapping.iteritems():
my_string = my_string.replace(k, v)
如果您不介意括号的话,一种更快的方法是:
mapping = [ ('A', '1'), ('B', '2'), ('C', '3'), ('D', '4'), ('E', '5') ]
for k, v in mapping:
my_string = my_string.replace(k, v)
关于python - Python 中的字符串替换列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/764360/