为了账号安全,请及时绑定邮箱和手机立即绑定

在字典中搜索字符串值

在字典中搜索字符串值

PHP
忽然笑 2023-11-09 10:54:13
我想根据字典 D 将字符串 S 中的一些单词更改为其他单词。例如,对于 S 和 D 的以下值:S="I don't know, who you are?"D={"doesn't":"does not","don't":"do not"}我应该得到S="I do not know, who you are?"为此,我编写以下代码:L=str.split(' ')index = [D[x] if x in D.keys() for x in L]但这给出了语法错误。请帮助我解决此错误,以便我能够获得如上所示的所需输出。如果这个问题有更好的解决方案,请解释一下。
查看完整描述

2 回答

?
红颜莎娜

TA贡献1842条经验 获得超12个赞

您也可以检查这一班轮答案:


S="I don't know, who you are?"

D={"doesn't":"does not","don't":"do not"}


result = ' '.join(map(lambda x: D[x] if D.get(x) else x, S.split()))

print(result)

输出:


'I do not know, who you are?'


查看完整回答
反对 回复 2023-11-09
?
qq_笑_17

TA贡献1818条经验 获得超7个赞

如果该值不在字典中,则只需获取该字符串值。

result = ' '.join(D.get(x,x) for x in S.split(' '))

语法错误的原因[D[x] if x in D.keys() for x in L]是,如果没有附带条件,则if需要进行后续操作。


查看完整回答
反对 回复 2023-11-09
  • 2 回答
  • 0 关注
  • 119 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信