如何在进行POST调用时使用flask_restful中的webargs或reqparse来传递numpy数组。我可以很容易地传递其他数据类型(string,int)的参数,但是numpy数组会被转换成unicode或抛出错误。
我希望能够做一些类似的事情:
from flask_restful import reqparse
parser = reqparse.RequestParser()
parser.add_argument('url', type=str)
parser.add_argument('id', type=str, required=True)
# Pass in numpy array
parser.add_argument('arr', type=numpy.array, required=True)我也尝试过使用webargs,但还没有找到一种方法来使它与numpy数组兼容。我已经设置好了:
from webargs import fields
from webargs.flaskparser import use_args
my_args = {'url': fields.Str(),
'id': fields.Str(required=True),
'arr': fields.Field()} # not sure what to put here有没有办法使用flask restful API高效地传入numpy数组?
编辑:我尝试将数据类型设置为List,但得到了一个新的错误,指示为u"'List' object is not callable"。我改变了:
# pass in numpy array
parser.add_argument('arr', type=fields.List(fields.Raw()))发布于 2019-04-10 01:21:12
documentation表示除了原语之外的一些其他数据类型。numpy数组可以解释为一个列表。
如果你想传递一个numpy对象来使用它的方法,我想解析器是不会工作的。
https://stackoverflow.com/questions/55597793
复制相似问题