我对朱莉娅(Julia)非常陌生,如今这些人大多使用Python编写代码。我正在使用Julia来处理和操纵HDF5文件。
所以当我写出[h5write
)时,由于数据参数是混合类型,所以我会得到一个错误,我需要找出原因。
错误消息说Array{Dict{String,Any},4}
是我要传递的内容,但是当我查看这些值(它是一个巨大的结构)时,我看到了很多0xff
和类似这样的值。我如何快速找到为什么选择Any而不是单一类型?
只需将此作为答案:
如果my_dicts
是Array{Dict{String, Any}, 4}
,那么计算出该字典的Any
部分中隐藏哪些类型的一种方法是:
unique(typeof.(values(my_dicts[1])))
解释:
my_dicts[1]
选择数组的第一个元素,即Dict{String, Any}
中的一个values
然后提取值,它是字典的Any
部分,typeof.
(注意点)在typeof
返回的所有元素上广播values
函数,并返回所有这些元素的类型;和unique
获取所有这些类型的列表,并将其简化为唯一元素,因此最终将获得字典的Any
部分中包含的每种单独类型的列表。