我一直在使用以下代码来获取限制:

compute_limits = novaClient.limits.get().absolute
for s in compute_limits:
    print s.name + " = " + str(s.value)


但是我只想要limits.get()中的特定值,即totalRAMUsedmaxTotalRAMSize。互联网上关于使用Python API的信息似乎很少(主要是关于CLI的信息)。有没有一种方法可以获取这些特定值以避免显示所有极限值?

最佳答案

您只能显示一个特定值:

compute_limits = novaClient.limits.get().absolute
for s in compute_limits:
    if s.name == 'totalRAMUsed':
        print s.name + " = " + str(s.value)
        break


compute_limitsgenerator,根据限制名称,您只能接收一个特定值。但是您可以将compute_limits转换为dict。例如:

compute_limits = novaClient.limits.get().absolute
l = list(compute_limits)
limits = dict(map(lambda x: (x.name, x.value), l))
print limits['totalRAMUsed']

关于python - OpenStack Python Nova API是否获得特定的极限值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47226713/

10-15 18:33