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。
由于
答案 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 ),在这种情况下,你总是可以重复使用正则表达式。