【问题标题】:How do I take a user input and print the corresponding key from a dictionary in python? [closed]如何获取用户输入并从 python 的字典中打印相应的键? [关闭]
【发布时间】:2022-01-14 06:01:43
【问题描述】:

这里是 Python 新手,我正在尝试获取我创建的字典,要求程序用户输入一个介于 1 和 4 之间的值,然后在我创建的字典中打印键值对应项作为响应用户的输入。

names = {1:'Harry',2:'Sally',3:'Joe',4:'Mathew'}

userInput = int(input('give me a value from 1-4: '))

for userInput in names:
    print(names[userInput])

据我所知,我一直在尝试尽可能多地搜索解决我的问题的方法,但我似乎找不到任何东西:(。如果有人知道这一点,有人可以解释一下我哪里出错了?非常感谢!

【问题讨论】:

  • for 循环的目的是什么?
  • 用你自己的话来说,代码上写着print(names[userInput]),这是什么意思?为了从字典中打印出所需的值,程序中此时userInput 应该等于多少?用你自己的话来说,代码中写着userInput = int(input('give me a value from 1-4: ')),这对userInput 有什么影响?这是否使它等于您想要的?用你自己的话来说,代码中写着for userInput in names:,这是什么意思?因此,userInput 的值会发生什么变化?你希望这种情况发生吗?你知道如何解决这个问题吗?
  • 欢迎来到 Stack Overflow。 “我一直在尝试尽可能多地在谷歌上搜索我的问题的解决方案,但我似乎找不到任何东西:(”你尝试搜索什么具体的东西?你找到了哪些网页?你尝试了什么阅读这些网页的结果是什么?它们为什么以及如何不起作用?
  • 我对您的建议是尝试从头到尾按照教程进行操作,以确保您学习了基础知识。如果您难以理解教程或完成其练习,通常最好尝试使用实际的 讨论论坛,例如 Reddit 或 Quora。这不是一个讨论论坛,这意味着我们对问题中的会话语言不感兴趣,我们对您对学习过程的挫败感或您的经验水平不感兴趣。我们对遵循How to Ask 中的指导方针的具体、明确提出的问题感兴趣。

标签: python loops dictionary for-loop input


【解决方案1】:

您通过在循环中使用相同的变量名称来覆盖 userInput 中的值。尝试如下

names = {1:'Harry',2:'Sally',3:'Joe',4:'Mathew'}

userInput = int(input('give me a value from 1-4: '))

print(names[userInput])

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-12-12
    • 1970-01-01
    • 2020-11-18
    • 1970-01-01
    • 1970-01-01
    • 2021-12-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多