python - 如何在python中更改字典的值?
问题描述
我发现在字典中找到一些单词并用另一个单词替换。编写了以下代码,但输出没有变化。我不知道如何更改输出?
for elem in output:
for el in elem ['tags']:
if el== 'datamining':
el='data mining'
elif el== 'data science':
el='data mining'
print(output)
新词
d = {
'datamining': 'data mining',
'data science': 'data mining',
}
字典
[{'title': 'title1',
'tags': ['datamining', 'data science',
'test',
'data mining',
'test1']},
{'title': 'title2',
'tags': ['title2',
'datamining']
}
]
预期字典
[{'title': 'title1',
'tags': ['data mining', 'data mining',
'test',
'data mining',
'test1']},
{'title': 'title2',
'tags': ['title2',
'data mining']
}
]
解决方案
这应该可以解决问题
for i, elem in enumerate(output):
for j, el in enumerate(elem ['tags']):
if 'datamining' in el:
output[i]['tags'][j]='data mining'
elif 'data science' in el:
output[i]['tags'][j]='data mining'
要消除 \u20:
for i, elem in enumerate(output):
for j, el in enumerate(elem ['tags']):
output[i]['tags'][j] = output[i]['tags'][j].replace("\\u20", "")
output[i]['tags'][j] = output[i]['tags'][j].replace('datamining', 'data mining')
output[i]['tags'][j] = output[i]['tags'][j].replace('data science', 'data mining')
推荐阅读
- c - 指向函数转换的指针
- office-js - 如何查找通过 ooxml 插入的内容
- android - 使用 Android Camera2,应用程序无限期卡在 STATE_WAITING_PRECAPTURE 或 STATE_WAITING_NON_PRECAPTURE
- vba - 单击/双击以在 Word 上打开用户窗体
- javascript - 最快的查找和插入结构
- colors - 十六进制颜色中的数字和字母有何不同?
- c# - 如何使用 Json.NET 对特定属性进行驼峰式处理?
- python - Can Fiddler change the return from Python Requests Module?
- perl - 如何在 Perl 中传递可选参数?(对于初学者)
- go - 如何正确使用通道控制并发?