如果存在,如何用字符串替换字符串

时间:2017-03-18 01:58:05

标签: python

Hello Guy我有疑问 如果字符串存在,如何替换字符串中的字符串。 例如:

list=['20':'1','40':'2','60':'3','80':'4','100':'5']

#I have this line:
x='abcd abcd 60'
num='60'
if num in x:
print('The new number is: ')

它会打印3而不是60,我怎么能这样做,否则如果在x中它将是80,它将把它替换为4。

由于

3 个答案:

答案 0 :(得分:1)

我将如何做到这一点:

首先,您似乎已经混淆了词典的语法。词典以{开头,以}结尾。 []用于list,他们没有:(列表如下:[1,2,3,4,5]。以下代码将遍历所有字典中的键,然后在字符串中正确替换它们。

li={'20':'1','40':'2','60':'3','80':'4','100':'5'}

string='abcd abcd 60'
for key in li:
    string = string.replace(key,li[key])

print(string)

答案 1 :(得分:1)

字典可能会更容易,所以它会是这样的:

list={'20':'1','40':'2','60':'3','80':'4','100':'5'}
x='abcd abcd 60'
num = '60'
if num in x:
    print('The new number is: '+list[num])

答案 2 :(得分:0)

dictionary={str(20*i):str(i) for i in range (5)}
text='abcd abcd 60 40'

for key in dictionary.keys():
    text=text.replace(key, dictionary[key])
print (text)

将打印abcd abcd 3 2

编辑:回答更新的问题

for key in dictionary:
    if key in text:
        print (dictionary[key])

小心这只有在你没有其他键的子串的键(即 term & term inal ),在这种情况下,你总是可以重复使用正则表达式。