Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

ऐरे - पायथन में संख्यात्मक मानों की कुशल सरणियाँ

सी/सी++, जावा आदि में ऐरे एक बहुत लोकप्रिय डेटा संरचना है। इन भाषाओं में ऐरे को समान डेटा प्रकार के एक से अधिक तत्वों के संग्रह के रूप में परिभाषित किया गया है। पायथन में सरणी के बराबर कोई अंतर्निहित नहीं है। यह सूची के साथ-साथ Tuple तत्वों का एक संग्रह है लेकिन वे विभिन्न प्रकार के हो सकते हैं।

पायथन का सरणी मॉड्यूल सी प्रकार सरणी का अनुकरण करता है। मॉड्यूल 'सरणी' वर्ग को परिभाषित करता है। निम्नलिखित कंस्ट्रक्टर एक ऐरे ऑब्जेक्ट बनाता है:

array(typecode, initializer)

टाइपकोड तर्क सरणी के प्रकार को निर्धारित करता है। प्रारंभकर्ता मिलान प्रकार के सभी तत्वों के साथ एक अनुक्रम होना चाहिए।

निम्नलिखित कथन एक पूर्णांक सरणी वस्तु बनाता है:

>>> import array
>>> arr = array.array('i', range(5))
>>> arr
array('i', [0, 1, 2, 3, 4])
>>> type(arr)
<class 'array.array'>
>>> array.typecodes
'bBuhHiIlLqQfd'

सरणी मॉड्यूल टाइपकोड विशेषता को परिभाषित करता है जो एक स्ट्रिंग देता है। स्ट्रिंग में प्रत्येक वर्ण एक प्रकार के कोड का प्रतिनिधित्व करता है जो C प्रकार और समकक्ष पायथन प्रकार को दर्शाता है:

<वें शैली="पाठ्य-संरेखण:केंद्र;">सी प्रकार
कोड टाइप करें पायथन प्रकार
'b' हस्ताक्षरित चार int
'B' अहस्ताक्षरित चार int
'u' Py_UNICODE यूनिकोड कैरेक्टर
'h' संक्षिप्त हस्ताक्षरित int
'H' अहस्ताक्षरित संक्षिप्त int
'i' हस्ताक्षरित int int
'I' अहस्ताक्षरित int int
'l' लंबे समय तक हस्ताक्षरित int
'L' अहस्ताक्षरित लंबा int
'q' लंबे समय तक हस्ताक्षरित int
'Q' अहस्ताक्षरित लंबा लंबा int
'f' फ्लोट फ्लोट
'd' डबल फ्लोट

प्रारंभकर्ता तर्क वस्तु की तरह बाइट हो सकता है। निम्नलिखित उदाहरण स्ट्रिंग के बाइट प्रतिनिधित्व से एक सरणी बनाता है।

>>> arr1 = array.array('b', b'Hello')
>>> arr1
array('b', [72, 101, 108, 108, 111])

सरणी वर्ग निम्नलिखित विधियों को परिभाषित करता है:

array.buffer_info()

यह विधि एक टपल (पता, लंबाई) लौटाती है जो वर्तमान मेमोरी एड्रेस और सरणी की सामग्री को रखने के लिए उपयोग किए जाने वाले बफर के तत्वों में लंबाई देती है।

>>> arr = array.array('i', [0, 1, 2, 3, 4])
>>> arr.buffer_info()
(2201141755144, 5)

गिनती ()

यह विधि सरणी में कुछ तत्वों की घटनाओं की संख्या लौटाती है।

>>> arr = array.array('i', [0, 1, 2, 3, 4])
>>> arr.count(2)
1

विस्तार()

यह विधि वस्तुओं को पुनरावर्तनीय से सरणी के अंत तक जोड़ती है या पुनरावर्तनीय जिसमें बिल्कुल एक ही प्रकार का कोड होना चाहिए; यदि नहीं, तो TypeError उठाया जाएगा।

>>> arr = array.array('i', [0, 1, 2, 3, 4])
>>> arr1 = array.array('i',[10,20,30])
>>> arr.extend(arr1)
>>> arr
array('i', [0, 1, 2, 3, 4, 10, 20, 30])

फ़ाइल से()

यह विधि फ़ाइल ऑब्जेक्ट से n आइटम (मशीन मान के रूप में) पढ़ती है और एक सरणी में जुड़ जाती है।

निम्नलिखित उदाहरण में, हम पहले एक फ़ाइल को बाइनरी राइट मोड में खोलते हैं।

>>> file = open('test.txt','wb')
>>> file.write(b'Hello Python')
12
>>> file.close()

अब हम इस फ़ाइल का उपयोग इसके डेटा को एरे ऑब्जेक्ट में जोड़ने के लिए करते हैं।

>>> a = array.array('i')
>>> file = open('test.txt','rb')
>>> a.fromfile(file,file.tell())
>>> a
array('i', [1819043144, 2035294319, 1852794996])

जोड़ें ()

यह विधि सरणी के अंत में एक नया आइटम जोड़ती है

सूची से ()

यह विधि सूची से वस्तुओं को सरणी में जोड़ती है। यह सूची में x के बराबर है:a.append(x)

>>> a = array.array('i')
>>> a.append(10)
>>> a
array('i', [10])
>>> num = [20,30,40,50]
>>> a.fromlist(num)
>>> a
array('i', [10, 20, 30, 40, 50])

सम्मिलित करें ()

निर्दिष्ट स्थान से पहले सरणी में एक नया आइटम डालें

>>> a = array.array('i', [10, 20, 30, 40, 50])
>>> a.insert(2,25)
>>> a
array('i', [10, 20, 25, 30, 40, 50])

पॉप ()

यह विधि आइटम को सरणी से हटाने के बाद दिए गए इंडेक्स पर लौटाती है।

>>> a = array.array('i', [10, 20, 30, 40, 50])
>>> x = a.pop(2)
>>> x
30
>>> a
array('i', [10, 20, 40, 50])

निकालें ()

यह विधि सरणी से दिए गए आइटम की पहली घटना को हटा देती है।

>>> a = array.array('i', [10, 20, 30, 40, 50])
>>> a.remove(30)
>>> a
array('i', [10, 20, 40, 50])

टोफाइल ()

यह विधि लिखने की अनुमति सक्षम होने पर फ़ाइल ऑब्जेक्ट में सभी आइटम लिखती है।

>>> a = array.array('i', [10, 20, 30, 40, 50])
>>> file = open("test.txt","wb")
>>> a.tofile(file)
>>> file.close()
>>> file = open("test.txt","rb")
>>> file.read()
b'\n\x00\x00\x00\x14\x00\x00\x00\x1e\x00\x00\x00(\x00\x00\x002\x00\x00\x00'

  1. पायथन में ऐरे घुमाएँ

    मान लीजिए कि हमारे पास एक सरणी A है। हमें इसे k चरणों में घुमाना है। तो अगर सरणी ए =[5, 7, 3, 6, 8, 1, 5, 4], और के =3 है, तो आउटपुट [1,5,4,5,7,3,6] होगा। 8]. कदम इस प्रकार हैं [4,5,7,3,6,8,1,5] [5,4,5,7,3,6,8,1] [1,5,4,5,7,3,6,8] इसे हल करने के लिए, हम इन चरणों का पालन करेंगे। चलो n सरणी का आका

  1. Python में दिए गए numpy array का डेटा प्रकार बदलें

    हमारे पास astype(data_type) नामक एक विधि है एक संख्यात्मक सरणी के डेटा प्रकार को बदलने के लिए। यदि हमारे पास float64 . प्रकार की एक संख्यात्मक सरणी है , तो हम इसे int32 . में बदल सकते हैं astype() . को डेटा प्रकार देकर सुन्न सरणी की विधि। हम dtype . का उपयोग करके numpy array के प्रकार की जांच कर सक

  1. पायथन संख्यात्मक प्रकार

    पायथन में कुछ विशिष्ट संख्यात्मक प्रकार होते हैं। ये पूर्णांक प्रकार संख्याएं, फ्लोटिंग पॉइंट नंबर, जटिल संख्याएं हैं। सम्मिश्र संख्याओं में, वास्तविक . के दो भाग होते हैं और इमेज . सम्मिश्र संख्याओं को (a + bj) के रूप में दर्शाया जाता है। भिन्न नामक एक और कार्य है। भिन्न में परिमेय संख्याएँ होती ह