np.array([0.25, np.array([0.3])])
рдлреНрд▓реЛрдЯ рдРрд░реЗ рдмрдирд╛рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд╣реЛрдВрдЧреЗ, dtype рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реЛрдЧрд╛ред
рдпрд╣ рдореБрдЭреЗ рдЧрд▓рдд рд▓рдЧрддрд╛ рд╣реИ, рдХреНрдпрд╛ рдпрд╣ рдЬрд╛рдирдмреВрдЭрдХрд░ рд╣реИ?
Cc @nschloe , рдЬреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рдЪреАрдЬрд╝ рдХреЗ рдЦрд┐рд▓рд╛рдл рд╣реИрдВ рдФрд░ рдЙрдирдХреЗ рдореБрджреНрджреЗ рд╕реЗ рдЬреБрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ
CCing рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рд╣рд╛рдБ, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореБрдЭреЗ рд▓рдЧ рд░рд╣рд╛ рд╣реИ рдХреА рддрд░рд╣ рд▓рдЧ рд░рд╣рд╛ рд╣реИред : рд╕реНрдорд╛рдЗрд▓реА_рдХреИрдЯ: https://github.com/numpy/numpy/issues/10404
рдореИрдВ рддрд░реНрдХ рджреВрдВрдЧрд╛ рдХрд┐ рдСрдмреНрдЬреЗрдХреНрдЯ рдРрд░реЗ рдмрдирд╛рдирд╛ рдпрд╣рд╛рдВ рд╕рд╣реА рдмрд╛рдд рд╣реИред рдЖрдЦрд┐рд░рдХрд╛рд░, рдЖрдк рдПрдХ рдлреНрд▓реЛрдЯ рдФрд░ рдПрдХ рд╕рд░рдгреА рдбрд╛рд▓ рд░рд╣реЗ рд╣реИрдВред рдпрджрд┐ рдЖрдкрдиреЗ рдкрд╛рдпрдерди рд╕реВрдЪреА рдмрдирд╛рдИ рд╣реИ,
[0.25, np.array([0.3])]
рдЖрдк рдПрдХ рд╣реА рдмрд╛рдд рдХреА рдЙрдореНрдореАрдж рдХрд░реЗрдВрдЧреЗ: рдкрд╣рд▓реА рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдПрдХ рдлреНрд▓реЛрдЯ рд╣реИ, рджреВрд╕рд░реА рд▓рдВрдмрд╛рдИ рдХреА рдПрдХ рд╕рд░рдгреА рд╣реИред рдпрд╣ рднреНрд░рд╛рдордХ рд╣реЛрдЧрд╛ рдпрджрд┐ рд╕реВрдЪреА рдФрд░ np.arrays рдпрд╣рд╛рдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддреЗ рд╣реИрдВред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдпрд╣рд╛рдБ рдПрдХ dtype рдлрд╝реНрд▓реЛрдЯ рдРрд░реЗ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рдХрднреА рднреА [float, vector[1]]
рдРрд░реЗ рдХреЛ рдмрдирд╛рдирд╛ рдЕрд╕рдВрднрд╡ рдмрдирд╛ рджреЗрддрд╛, рднрд▓реЗ рд╣реА рдореИрдВ рдЪрд╛рд╣рддрд╛ рдерд╛ред
рдЬреНрдпрд╛рджрд╛рддрд░ рд╕рдордп, np.array([0.25, np.array([0.3])])
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реБрдП рдЧрд▓рддреА рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рддрдп рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ; рджреЗрдЦреЗрдВ, рдЬреИрд╕реЗ, https://github.com/scipy/scipy/pull/11147/files#diff -21a6a0b0d89357857304bfba2da5a971L321ред рдЖрдЦрд╝рд┐рд░рдХрд╛рд░,
рдирд┐рд╣рд┐рддрд╛рд░реНрде рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд╣реИред
рдареАрдХ рд╣реИ, рд╕рдорд╛рдкрдиред рдЙрд╕ рдкреАрдЖрд░ рдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдПрдирдИрдкреА 34 рдмрджрд▓рд╛рд╡ рдХрд┐рдП рд╣реИрдВ (рдЙрд▓реНрдЯреЗ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж) рдХрдо рдЪреАрд░-рдлрд╛рдбрд╝ рдХреЗ рд▓рд┐рдП рд╡рд┐рдШрдЯрдирдХрд╛рд░реАред
@nschloe
рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдпрд╣рд╛рдБ рдПрдХ dtype рдлреНрд▓реЛрдЯ рдРрд░реЗ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рдХрднреА рднреА [рдлреНрд▓реЛрдЯ, рд╡реЗрдХреНрдЯрд░ [1]] рдПрд░реЗ рдХреЛ рдмрдирд╛рдирд╛ рдЕрд╕рдВрднрд╡ рдмрдирд╛ рджреЗрддрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдБред
рд░рд┐рдХреЙрд░реНрдб рдХреЗ рд▓рд┐рдП, рдЖрдк np.array(0.3, np.array([0.3]), dtype=object)
ред
рдпрджрд┐ рдЖрдкрдиреЗ рдкрд╛рдпрдерди рд╕реВрдЪреА рдмрдирд╛рдИ ...
NumPy ndarrays рдЕрдЬрдЧрд░ рд╕реВрдЪрд┐рдпреЛрдВ рд╕реЗ рдмрд╣реБрдд рдЕрд▓рдЧ рд╣реИрдВред рдореБрдЭреЗ рдЗрд╕рдХреА рдХреЛрдИ рдЙрдореНрдореАрдж рдирд╣реАрдВ рд╣реЛрдЧреА
np.array([0.2, 0.3, 0.4])
рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдПрд░реЗ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдЧрд╛, рдЬрдмрдХрд┐ рдореИрдВрдиреЗ dtype рдХреЗ рд▓рд┐рдП np.float64
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ред рдЗрд╕рд▓рд┐рдП рд╣рдо рд╕рд╣рдордд рд╣реИрдВ рдХрд┐ рд╣рдо рд╕реНрд╡рдЪрд╛рд▓рд┐рдд, рдореВрд▓реНрдп-рдЖрдзрд╛рд░рд┐рдд dtype рдЦреЛрдЬ рдХреЗ рдХреБрдЫ рд╕реНрддрд░ рдХреЗ рд╕рд╛рде рд╕рд╣рдЬ рд╣реИрдВред рд╕рд╡рд╛рд▓ рдпрд╣ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдкреВрд░реНрд╡рд╡рд░реНрддреА: рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдкреНрд░рдХрд╛рд░ рдпрд╛ рд╡рд╕реНрддреБ рдкреНрд░рдХрд╛рд░ред
рдЗрд╕рд▓рд┐рдП рд╣рдо рд╕рд╣рдордд рд╣реИрдВ рдХрд┐ рд╣рдо рд╕реНрд╡рдЪрд╛рд▓рд┐рдд, рдореВрд▓реНрдп-рдЖрдзрд╛рд░рд┐рдд dtype рдЦреЛрдЬ рдХреЗ рдХреБрдЫ рд╕реНрддрд░ рдХреЗ рд╕рд╛рде рд╕рд╣рдЬ рд╣реИрдВред
"рд╕реНрд╡рдЪрд╛рд▓рди" рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рд╕реЗ рдХрд╛рдлреА рд╕реНрдкрд╖реНрдЯ рд╣реИ: рд╣рдореЗрд╢рд╛ "рд╕рдмрд╕реЗ рдХрдо" рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ рдЬреЛ рд╕рднреА рдЗрдирдкреБрдЯ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдХреИрдкреНрдЪрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
numpy.array([1, 2]).dtype # int64
numpy.array([1, numpy.array(2)]).dtype # int64, array of rank 0 are basically scalars
numpy.array([1.0, 2]).dtype # float64
numpy.array([1, [2]]).dtype # O