Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用azure sdk for python获取json格式的虚拟机大小列表_Python_Azure_Azure Sdk Python - Fatal编程技术网

使用azure sdk for python获取json格式的虚拟机大小列表

使用azure sdk for python获取json格式的虚拟机大小列表,python,azure,azure-sdk-python,Python,Azure,Azure Sdk Python,我正在尝试使用azure sdk for python库连接到azure云并执行某些操作 我遵循了Azure文档中提供的以下代码示例,首先介绍了根据位置获取虚拟机大小的API 要获取身份验证客户端,请执行以下操作: 获取ComputeManagementclient对象后,以下几行将检索VirtualMachineSize对象的列表 client = CompteManagementClient(credentials, subscription_id) vmSizesList = client

我正在尝试使用azure sdk for python库连接到azure云并执行某些操作

我遵循了Azure文档中提供的以下代码示例,首先介绍了根据位置获取虚拟机大小的API

要获取身份验证客户端,请执行以下操作:

获取ComputeManagementclient对象后,以下几行将检索VirtualMachineSize对象的列表

client = CompteManagementClient(credentials, subscription_id)
vmSizesList = client.virtual_machine_sizes.list()
我希望这个输出是json格式的,而不是对象。因此,我尝试了以下陈述: 结果=json.dumps(vmSizesList)

这将导致错误“对象不可序列化”

我认为另一种方法是循环并手动构建json结构化数据。任何帮助都将不胜感激


如果您需要任何其他信息,请发表评论。

调用
列表的结果将返回一个iterable,因此首先您必须将此iterable作为列表使用。然后,每个对象将包含一个
序列化方法,该方法将把对象恢复为JSON形式

实际上:

client = CompteManagementClient(credentials, subscription_id)
vmSizesList = [vm_size.serialize() for vm_size in client.virtual_machine_sizes.list()]
json.dumps(vmSizesList)

list
调用的结果返回一个iterable,因此首先必须将此iterable作为列表使用。然后,每个对象将包含一个序列化方法,该方法将把对象恢复为JSON形式

实际上:

client = CompteManagementClient(credentials, subscription_id)
vmSizesList = [vm_size.serialize() for vm_size in client.virtual_machine_sizes.list()]
json.dumps(vmSizesList)