如何使用列表理解从字典中获取特定值并修改它们?

How to get specific values from a dictionary using list comprehension and modify them?

有人可以帮忙并请教我如何从这本词典中获取特定值(使用列表理解)和

  1. 仅对值进行平方,
  2. 更改每个字符串值,使其以大写字母开头?
items_list = {'a': 3, 'b':6, 'c': 'short', 'h': 'example', 'p': 77}

所以,输出需要是:

9, 36, 5929
Short, Example

是的,您需要遍历字典并检查该值是否为 int 然后对其进行平方,如果不是大写

result = []
for key, value in dictionary.items()
    if type(value) is int:
        result.append(value**2)
    else:
        result.append(value.capitalize())
print(result)

这应该打印所需的输出

(Python):

items_list = {'a': 3, 'b': 6, 'c': 'short', 'h': 'example', 'p': 77}

lst = [v ** 2 if isinstance(v, (int, float)) else v.capitalize() for v in
       items_list.values()]

print(lst)

输出:

[9, 36, 'Short', 'Example', 5929]

使用单列表理解无法产生您显示的确切输出,因为迭代是有序的。