list - 如何在 Julia 中将 Float 类型的数组转换为 Any?
问题描述
我想python like list
在 Julia 中将数组转换为 a 。
要创建一个数组,type
Any
可以使用此语法初始化一个空数组array = []
。但是,如果我想执行转换,即让我们将类型数组转换Array(Float64,1)
为类型Any
,那么正确的方法是什么?
或者如果有任何替代方法可以在 Julia 中创建列表?
我创建一个函数的方法,该函数接受一个数组并将其转换为任何类型:
function list(x)
x = convert(Any, x)
return x
end
x_test = [0.19, 0.03, 0.27]
t1 = typeof(x_test)
println("type of x_test is: $t1")
x_test = list(x_test)
t2 = typeof(x_test)
println("type of x_test is: $t2")
Output:
type of x_test is: Array{Float64,1}
type of x_test is: Array{Float64,1}
请提出实现此转换任务的方法或解决方案。
谢谢。
解决方案
你可以做:
julia> list(x) = Any[i for i ∈ x]
list (generic function with 1 method)
julia> list([0.19, 0.03, 0.25])
3-element Vector{Any}:
0.19
0.03
0.25
但正如奥斯卡在他的评论中所说,你为什么要这样做呢?确实,Python 性能经常因为缺少类型信息而受到影响,这并不意味着如果你故意阻止编译器优化,Julia 就会变得“像 Python”(尽管在几乎所有情况下它都会变得慢很多!)
推荐阅读
- c# - 是否可以在 Azure Api Management 的同一个项目中为两个不同的服务(控制器中的方法)使用两个不同的 API 密钥?
- go - 如何使用 Go 进行变量解包
- c# - 如何检查 Type 是否为可为空的系统类型
- mysql - 尝试创建一个包装器以将其用作 sql.query() 的承诺
- javascript - 尝试创建对象字典时出现语法错误
- java - Java:将输入添加到链接列表
- javascript - 使用点击事件保存到本地存储
- python - 多个传感器的python精确计时
- nginx - Nginx 无法添加标头
- java - moveToElement 不会触发鼠标悬停事件