2016-08-24 4 views
0

Я использую novaclient для получения информации из Openstack. Я могу получить информацию, однако я хочу преобразовать ее в формат json. Я использую «to_dic()», но он бросает ошибку «Атрибут» на «server_details = server_id_name.to_dict()», не уверен, почему.Выход Openstack в json формате

AttributeError: "'tuple' object has no attribute 'to_dict'" 

код приведен ниже,

from novaclient import client as novaclient 
import json 

nova = novaclient.Client(version='2.0',username='xxxx',api_key='xxxx',project_id='xxxx',auth_url='http://192.168.12.3:5000/v2.0/',insecure='True') 

server_details = dict() 
server = nova.servers.list() 
for server in nova.servers.list(): 
    print server.id, server.name 
    server_id_name = server.id, server.name 
    server_details = server_id_name.to_dict() 
    for network in server.networks.items(): 
     print network 

ответ

1

Это ошибка в коде Python. вы должны использовать

server_details[server.id] = server.name 

заменить код

server_id_name = server.id, server.name 
server_details = server_id_name.to_dict() 

BTW, вы должны узнать больше о питона. Если вы хотите изменить кортеж на dict, вы должны увидеть python-tuple-to-dict

+0

Спасибо и согласились, я новичок в python! – tgcloud