Python-将参数作为结构发送

Python-将参数作为结构发送,python,struct,Python,Struct,我使用的API要求我给出3个参数 string sessionKey int serverId struct date details dateTime.iso8601 startDate - Optional, unless endDate is provided. dateTime.iso8601 endDate - Optional. 我不知道在这种情况下如何定义结构。我用这种方式调用API >>> server.system.pro

我使用的API要求我给出3个参数

string sessionKey
int    serverId
struct date details
       dateTime.iso8601 startDate - Optional, unless endDate is provided.
       dateTime.iso8601 endDate - Optional. 
我不知道在这种情况下如何定义结构。我用这种方式调用API

>>> server.system.provisioning.snapshot.listSnapshots(sessionKey,1000078204, {datetime.now() , datetime.now()})
因此,我用以下语法定义我的
struct

{datetime.now() , datetime.now()}
这给了我一个错误:

Traceback (most recent call last):
  File "/usr/lib64/python3.4/xmlrpc/client.py", line 512, in __dump
f = self.dispatch[type(value)]
KeyError: <class 'set'>

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib64/python3.4/xmlrpc/client.py", line 1098, in __call__
    return self.__send(self.__name, args)
  File "/usr/lib64/python3.4/xmlrpc/client.py", line 1431, in __request
    allow_none=self.__allow_none).encode(self.__encoding)
  File "/usr/lib64/python3.4/xmlrpc/client.py", line 951, in dumps
    data = m.dumps(params)
  File "/usr/lib64/python3.4/xmlrpc/client.py", line 504, in dumps
    dump(v, write)
  File "/usr/lib64/python3.4/xmlrpc/client.py", line 516, in __dump
    raise TypeError("cannot marshal %s objects" % type(value))
TypeError: cannot marshal <class 'set'> objects
回溯(最近一次呼叫最后一次):
文件“/usr/lib64/python3.4/xmlrpc/client.py”,第512行,在
f=自动分派[类型(值)]
关键错误:
在处理上述异常期间,发生了另一个异常:
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/usr/lib64/python3.4/xmlrpc/client.py”,第1098行,在__
返回self.\u发送(self.\u名称,args)
文件“/usr/lib64/python3.4/xmlrpc/client.py”,第1431行,在请求中
允许\无=自我。\允许\无)。编码(自我。\编码)
文件“/usr/lib64/python3.4/xmlrpc/client.py”,第951行,转储
数据=m.dumps(参数)
文件“/usr/lib64/python3.4/xmlrpc/client.py”,第504行,转储
转储(v,写入)
文件“/usr/lib64/python3.4/xmlrpc/client.py”,第516行,在
raise TypeError(“无法封送%s对象”%type(value))
TypeError:无法封送对象
我是否定义了
struct
错误

在XML-RPC(您的错误回溯表明您正在使用)中,“struct”是Python所称的“dict(ionary)”,但您正试图使用
集。您需要使用API文档中给出的键名(即
startDate
endDate
)创建
dict
,因此:


这个问题与我无关
>>> server.system.provisioning.snapshot.listSnapshots(sessionKey,1000078204, {"startDate": datetime.now(), "endDate": datetime.now()})