जवाबों:
numpy.array एक बनाने के लिए सिर्फ एक सुविधा समारोह है ndarray ; यह स्वयं एक वर्ग नहीं है।
आप एक सरणी का उपयोग करके भी बना सकते हैं numpy.ndarray, लेकिन यह अनुशंसित तरीका नहीं है। के डॉकस्ट्रिंग से numpy.ndarray:
ऐरे का उपयोग करके निर्माण किया जाना चाहिए
array,zerosयाempty... यहां दिए गए पैरामीटरndarray(...)एक सरणी को तत्काल बनाने के लिए निम्न-स्तरीय विधि ( ) का संदर्भ देते हैं ।
कार्यान्वयन का अधिकांश मांस सी कोड में है, यहां मल्टीएरे में है , लेकिन आप ndarray रिक्त स्थान को देखना शुरू कर सकते हैं:
https://github.com/numpy/numpy/blob/master/numpy/core/numeric.py
np.arrayएक वर्ग नहीं है, जैसा कि मैं अक्सर करता हूं। x = np.array([1,2.1,3]) if isinstance(x,np.array): # will give you a TypeError
array_getarrayका कार्यान्वयन है numpy.ndarray.__array__। कम से कम, वर्तमान कार्यान्वयन में numpy.arrayशुरू होता है _array_fromobject।
numpy.arrayएक ऐसा फंक्शन है जो रिटर्न करता है numpy.ndarray। कोई ऑब्जेक्ट प्रकार numpy.array नहीं है।
Numpy.array और numpy.ndarray के बीच अंतर दिखाने के लिए उदाहरण कोड की कुछ पंक्तियाँ
वार्म अप स्टेप: एक सूची का निर्माण करें
a = [1,2,3]
प्रकार की जाँच करें
print(type(a))
तुम्हे मिल जाएगा
<class 'list'>
Np.array का उपयोग करके एक सरणी (किसी सूची से) का निर्माण करें
a = np.array(a)
या, आप सीधे वार्म अप कदम को छोड़ सकते हैं
a = np.array([1,2,3])
प्रकार की जाँच करें
print(type(a))
तुम्हे मिल जाएगा
<class 'numpy.ndarray'>
जो आपको बताता है कि सुन्न सरणी का प्रकार numpy.ndarray है
आप टाइप करके भी देख सकते हैं
isinstance(a, (np.ndarray))
और आपको मिलेगा
True
या तो निम्न दो पंक्तियों में आपको एक त्रुटि संदेश मिलेगा
np.ndarray(a) # should be np.array(a)
isinstance(a, (np.array)) # should be isinstance(a, (np.ndarray))
numpy.ndarray()एक वर्ग है, जबकि numpy.array()बनाने के लिए एक विधि / कार्य हैndarray ।
यदि आप ndarrayकक्षा से एक सरणी बनाना चाहते हैं, तो आप इसे दो तरीकों से उद्धृत कर सकते हैं:
1- का उपयोग array(), zeros()या empty()विधियों:
सरणी, शून्य या खाली (नीचे भी देखें अनुभाग देखें) का उपयोग करके एरे का निर्माण किया जाना चाहिए। यहां दिए गए पैरामीटर ndarray(…)एक सरणी को तत्काल करने के लिए निम्न-स्तरीय विधि ( ) का संदर्भ देते हैं ।
2- ndarrayकक्षा से सीधे:
सरणी का उपयोग करने के दो तरीके हैं __new__: यदि बफर कोई नहीं है, तो केवल आकृति, dtype और क्रम का उपयोग किया जाता है। यदि बफर बफर इंटरफेस को उजागर करने वाली वस्तु है, तो सभी खोजशब्दों की व्याख्या की जाती है।
नीचे दिया गया उदाहरण एक यादृच्छिक सरणी देता है क्योंकि हमने बफर मान प्रदान नहीं किया है:
np.ndarray(shape=(2,2), dtype=float, order='F', buffer=None) array([[ -1.13698227e+002, 4.25087011e-303], [ 2.88528414e-306, 3.27025015e-309]]) #random
एक अन्य उदाहरण बफर ऑब्जेक्ट को उदाहरण के लिए असाइन करना है:
>>> np.ndarray((2,), buffer=np.array([1,2,3]), ... offset=np.int_().itemsize, ... dtype=int) # offset = 1*itemsize, i.e. skip first element array([2, 3])
ऊपर के उदाहरण से हम देखते हैं कि हम "बफर" को एक सूची नहीं दे सकते हैं और हमें बफर के लिए ndarray ऑब्जेक्ट को वापस करने के लिए numpy.array () का उपयोग करना होगा
निष्कर्ष: numpy.array()यदि आप एक numpy.ndarray()वस्तु बनाना चाहते हैं तो उपयोग करें "