首页 > 解决方案 > 访问字典,用字典中的信息替换用户输入中的项目

问题描述

我试图访问一个名为 Brands 的字典。然后我试图用来自字典的信息替换来自用户输入的信息。我正在努力打印并替换用户输入的文本。目前我唯一能做的就是打印出所有表格内容,插入的单词很遗憾没有太大帮助。

BRANDS = {
  'Velcro': 'hook and loop fastener',
  'Kleenex': 'tissues',
  'Hoover': 'vacuum',
  'Bandaid': 'sticking plaster',
  'Thermos': 'vacuum flask',
  'Dumpster': 'garbage bin',
  'Rollerblade': 'inline skate',
  'Asprin': 'acetylsalicylic acid'
}


userinput = input("Sentence: ")
print('a', userinput, 'is', BRANDS[userinput])

这是我的代码必须做的一个例子。

Sentence: I bought some Velcro shoes.

Result >>> I bought some hook and loop fastener shoes.

标签: pythonstringdictionaryinput

解决方案


您可以定义一个函数来循环浏览您的字典并str.replace重复执行:

def replacer(x, d):
    for k, v in d.items():
        x = x.replace(k, v)
    return x

userinput = input("Sentence: ")
print(replacer(userinput, BRANDS))

例子:

Sentence: I bought some Velcro shoes.
I bought some hook and loop fastener shoes.

推荐阅读