gpt4 book ai didi

julia - 在 Julia 中提取参数类型

转载 作者:行者123 更新时间:2023-12-02 00:46:43 26 4
gpt4 key购买 nike

假设我在 Julia 中编写一个函数,它接受 Dict{K,V} 作为参数,然后创建 Array{K,1} 类型的数组和 数组{V,1}。如何从 Dict 对象中提取类型 KV 以便我可以使用它们来创建数组?

最佳答案

Sven 和 John 的答案都很正确。如果您不想像 John 的代码那样引入方法类型参数,可以使用 eltype 函数:

julia> d = ["foo"=>1, "bar"=>2]
["foo"=>1,"bar"=>2]

julia> eltype(d)
(ASCIIString,Int64)

julia> eltype(d)[1]
ASCIIString (constructor with 1 method)

julia> eltype(d)[2]
Int64

julia> eltype(keys(d))
ASCIIString (constructor with 1 method)

julia> eltype(values(d))
Int64

如您所见,有几种方法可以给这只猫剥皮,但我认为eltype(keys(d))eltype(values(d)) 是迄今为止最清晰的,并且由于 keysvalues 函数仅返回不可变的 View 对象,因此编译器足够聪明,实际上不会创建任何对象。

关于julia - 在 Julia 中提取参数类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20991220/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com