Ich habe ein Wörterbuch von Histogrammen gemacht, mit vielen Einträgen. Die Tasten sind 4-Element-Integer-Arrays als einfacher Aufruf an das Objekt zurückkehrt:Warum produziert Julia #undef Schlüssel im Wörterbuch?
In[88] Histogramas
Out[88] Dict{Array{Int64,N},Array{T,N}} with 36540 entries:
[56,8,39,55] => [0,2,4,7,19,44,61,76,124,116 … 0,0,0,0,0,0,0,0,0,0]
[64,20,48,55] => [284,368,202,106,35,3,2,0,0,0 … 0,0,0,0,0,0,0,0,0,0]
[54,9,50,54] => [0,0,0,0,0,0,0,0,0,2 … 1,0,0,0,0,0,0,0,0,0]
[37,26,45,61] => [0,6,11,35,47,86,113,133,136,139 … 0,0,0,0,0,0,0,0,0,0]
[37,15,51,50] => [673,272,48,5,2,0,0,0,0,0 … 0,0,0,0,0,0,0,0,0,0]
[35,22,53,45] => [331,370,201,69,25,4,0,0,0,0 … 0,0,0,0,0,0,0,0,0,0]
[37,25,56,40] => [460,382,127,27,3,0,1,0,0,0 … 0,0,0,0,0,0,0,0,0,0]
....
Aber wenn ich Histogramas.keys
rufen dann bekomme ich diese sehr seltsame Ausgabe:
Out[90] : 65536-element Array{Array{Int64,N},1}:
#undef
#undef
[56,8,39,55]
#undef
[64,20,48,55]
[54,9,50,54]
#undef
[37,26,45,61]
[37,15,51,50]
...
Also habe ich fast zweimal Tasten wie es Einträge des Wörterbuchs gibt, und die meisten der zusätzlichen sind #undef
, was ich übrigens auch nicht weiß, was das bedeutet. ¿Undefiniert in welchem Sinne?
Und die Punktnotation, was ist ihre Verwendung in Julia dann? Vielen Dank, Stefan, du beantwortest immer meine Fragen! – wpkzz
Die Punktnotation gilt nur für den wörtlichen Feldzugriff. Es gab Diskussionen darüber, dass es überlastet sein könnte, aber das ist noch nicht geschehen. – StefanKarpinski