javaxmlrpc中的Python元组

2024-10-16 20:42:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图通过javaxmlrpc传递python元组。这是我正在使用的图书馆: XMLPRC Java Libray

我在服务器和api上使用odoo框架。我想传递如下的论点:

[(4,7),(4,8)]

我能通过以下结构:

[[4,7],[4,8]]

显然是数组内部的数组,比如:

new Object[]{new Object[]{4,7},new Object[]{4,8}}

问题是java中没有元组。我吸收的是如何改造这种结构:

这个[4,8]到这个(4,8)

这是一种序列化问题,但不知道如何解决它并传递预期的python结构。在


Tags: odoo服务器框架apinewobject图书馆数组
3条回答

XML-RPC有限。因此,列表和元组只有一种类型。如果您查看odoo的文档,您将看到Python示例中的元组和列表都转换为数组.asList在Java中。所以,如果你有一些错误,很有可能是其他错误

[[4,7],[4,8]]有问题吗?大多数python操作不会将元组与实际列表区分开来。在奥多就更少了。我认为这是通过不实现元组的语言发送元组列表的正确方法。元组不是键,值的东西。您可以使用(a, b, c),它是一个元组。这有点类似于[a, b, c]。你可以在这两个上面迭代。您可以通过索引获得它们的值(如果两者都存储在一个element变量中,那么从中得到a对它们两者来说都是element[0])。在

因此,如果您有问题,我认为这不是元组的问题,而且您没有回答关于XMLRPC调用是否有错误的注释。我猜没有错。如果有错误,我肯定不是元组的问题。在

一个简单的想法是将其作为字符串发送。就像这样:

String a="[[4,7],[4,8]]";

只需在python数组中使用eval()方法。如果要将其作为元组数组,请使用:

^{pr2}$

只需使用python语法作为字符串。在python中,可以使用:

my_list=eval(a)
print my_list[0]

它将提供:

(4,7)

作为最后一个例子的输出。在

相关问题 更多 >