将 PyCall PyObject Decimal 转换为 Julia Float
Converting PyCall PyObject Decimal to Julia Float
在 python 的 Julia 和 MySQLdb 中使用 PyCall 时,我的 select 查询结果在 PyObject 中,
PyObject Decimal('10')
如何将其转换为纯 Float 以便我只能得到 10?
我尝试了 python 版本,float(response),但自从我在 Julia 中以来,它就不起作用了。
如https://docs.julialang.org/en/v0.6.2/manual/conversion-and-promotion/中所述,
可以通过以下方式完成:
julia> convert(AbstractFloat,response)
10.0
其实它也可以解析Python个对象。
您实际上可以通过 PyCall
调用 float
。 convert
ing 到 Float64
或 BigFloat
也应该有效。
julia> d = pyimport("decimal");
julia> response = d[:Decimal]("10")
PyObject Decimal('10')
julia> py"float"(response)
10.0
julia> convert(Float64, response)
10.0
在 python 的 Julia 和 MySQLdb 中使用 PyCall 时,我的 select 查询结果在 PyObject 中,
PyObject Decimal('10')
如何将其转换为纯 Float 以便我只能得到 10?
我尝试了 python 版本,float(response),但自从我在 Julia 中以来,它就不起作用了。
如https://docs.julialang.org/en/v0.6.2/manual/conversion-and-promotion/中所述, 可以通过以下方式完成:
julia> convert(AbstractFloat,response)
10.0
其实它也可以解析Python个对象。
您实际上可以通过 PyCall
调用 float
。 convert
ing 到 Float64
或 BigFloat
也应该有效。
julia> d = pyimport("decimal");
julia> response = d[:Decimal]("10")
PyObject Decimal('10')
julia> py"float"(response)
10.0
julia> convert(Float64, response)
10.0