val.item()एक देशी पायथन प्रकार के अधिकांश न्यूपे वैल्यू को बदलने के लिए उपयोग करें :
import numpy as np
# for example, numpy.float32 -> python float
val = np.float32(0)
pyval = val.item()
print(type(pyval)) # <class 'float'>
# and similar...
type(np.float64(0).item()) # <class 'float'>
type(np.uint32(0).item()) # <class 'long'>
type(np.int16(0).item()) # <class 'int'>
type(np.cfloat(0).item()) # <class 'complex'>
type(np.datetime64(0, 'D').item()) # <class 'datetime.date'>
type(np.datetime64('2001-01-01 00:00:00').item()) # <class 'datetime.datetime'>
type(np.timedelta64(0, 'D').item()) # <class 'datetime.timedelta'>
...
(एक अन्य विधि है np.asscalar(val), हालांकि यह NumPy 1.16 के बाद से पदावनत है)।
जिज्ञासु के लिए, आपके सिस्टम के लिए NumPy सरणी स्केलरों के रूपांतरणों की एक तालिका बनाने के लिए:
for name in dir(np):
obj = getattr(np, name)
if hasattr(obj, 'dtype'):
try:
if 'time' in name:
npn = obj(0, 'D')
else:
npn = obj(0)
nat = npn.item()
print('{0} ({1!r}) -> {2}'.format(name, npn.dtype.char, type(nat)))
except:
pass
कुछ NumPy प्रकार है कि सहित कुछ सिस्टम, पर कोई देशी अजगर बराबर हैं: clongdouble, clongfloat, complex192, complex256, float128, longcomplex, longdoubleऔर longfloat। उपयोग करने से पहले इन्हें अपने निकटतम न्यूमपी समकक्ष में परिवर्तित करना होगा .item()।