【问题标题】:Dictionary in Python and key with valuePython中的字典和带值的键
【发布时间】:2018-04-16 11:53:58
【问题描述】:

我必须创建一个仅向友好的熊打印问候语的程序。我创建了这个程序,但它给了我所有的熊,也给了我愤怒的熊。

bears = {"Grizzly":"angry", "Brown":"friendly", "Polar":"friendly"}
for bear in bears:
  if "[bear]:friendly":
   print("Hello, "+bear+" bear!")
else:
  print("odd")

【问题讨论】:

  • if "[bear]:friendly":你认为这是在做什么?
  • 另外,确保你的缩进是有意义的。我猜你想要的是 if/else 声明,而不是 for/else
  • 我认为这是在考虑密钥是否友好
  • @Joaquin 你需要if bears[bear] == 'friendly':
  • 压痕还可以,因为这是一位老师给我们的。

标签: python


【解决方案1】:

我认为通过items() 方法(或iteritems(),如果您使用python2)迭代dict 的键和值是一个更好的主意:

for bear_name, status in bears.items():  # get key and value for bear
    if status == 'friendly':
        print("Hello, " + bear_name + " bear!")

而且北极熊通常不友好。

【讨论】:

  • 答案通常会附带一些解释
【解决方案2】:

您可以使用这种方法:

bears = {"Grizzly":"angry", "Brown":"friendly", "Polar":"friendly"}

for i,j in bears.items():
    if j=="friendly":
        print("Hello, " + i + " bear!")
    else:
        print('odd')

输出:

odd
Hello, Polar bear!
Hello, Brown bear!

【讨论】:

    【解决方案3】:

    您可以使用以下内容,它应该会给您想要的输出:

    for bear in bears:
    if bears[bear] == "friendly":
        print("Hello, " + bear + " bear!")
    else:
        print("odd")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-11-27
      • 2015-06-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-05
      • 2021-08-02
      相关资源
      最近更新 更多