如何获取python字典中的第一个值

ust*_*etz 8 python dictionary list

我有一个这样的字典:

myDict = {  
    'BigMeadow2_U4': (1609.32, 22076.38, 3.98),  
    'MooseRun': (57813.48, 750187.72, 231.25),  
    'Hwy14_2': (991.31, 21536.80, 6.47)  
}
Run Code Online (Sandbox Code Playgroud)

如何获得我的指示中每个项目的第一个值?

我想最后一个清单:

myList = [1609.32,57813.48,991.31]
Run Code Online (Sandbox Code Playgroud)

Mik*_*maa 46

现代 Python 3.x 可以使用比构造list.

first_value = next(iter(my_dict.values()))
Run Code Online (Sandbox Code Playgroud)

请注意,如果字典为空,您将得到StopIteration异常而不是None

从 Python 3.7+ 开始,这保证为您提供第一项。

  • 不。这是 Python 的记录功能,因此如果其他实现声称实现 Python>=3.7,也应该这样做。所以 PyPy 确实实现了它(至少对于 PyPy 3.7+)。所以它的未来和 Python 中的任何东西一样有保证。 (4认同)

And*_*nov 7

试试这种方式:

my_list = [elem[0] for elem in your_dict.values()]
Run Code Online (Sandbox Code Playgroud)

Offtop:我认为你不应该使用camelcase,它不是python方式

UPD:inspectorG4dget注意到,结果将不一样.这是正确的.您应该使用collections.OrderedDict来正确实现此功能.

from collections import OrderedDict
my_dict = OrderedDict({'BigMeadow2_U4': (1609.32, 22076.38, 3.98), 'MooseRun': (57813.48, 750187.72, 231.25), 'Hwy14_2': (991.31, 21536.80, 6.47) })
Run Code Online (Sandbox Code Playgroud)