logo

Arrays Python

Per simplificar, podem pensar en una matriu Python com una flota d'escales on a cada graó es col·loca un valor (diguem que un dels teus amics). Aquí, podeu identificar la ubicació de qualsevol dels vostres amics simplement coneixent el recompte dels passos en què estan. La matriu es pot gestionar a Python mitjançant un mòdul anomenat array. Poden ser útils quan hem de manipular només valors de tipus de dades específics. Un usuari pot tractar les llistes com a matrius. Tanmateix, l'usuari no pot limitar el tipus d'elements emmagatzemats en una llista. Si creeu matrius de Python mitjançant el mòdul de matriu, tots els elements de la matriu a Python han de ser del mateix tipus. En aquest article, veurem com utilitzar una matriu en Python amb exemples.

Què és una matriu en Python?

Una matriu és una col·lecció d'elements emmagatzemats en ubicacions de memòria contigües. La idea és emmagatzemar diversos articles del mateix tipus junts. Això fa que sigui més fàcil calcular la posició de cada element simplement afegint un desplaçament a un valor base, és a dir, la ubicació de memòria del primer element de la matriu (generalment es denota amb el nom de la matriu).



maneig d'excepcions en java

Creeu una matriu en Python

La matriu en Python es pot crear important un mòdul de matriu. matriu ( tipus_dada , llista_valors ) s'utilitza per crear una matriu en Python amb el tipus de dades i la llista de valors especificats als seus arguments.

Al codi següent, Python crea una matriu: un dels nombres enters i un de dobles . A continuació, imprimeix el contingut de cada matriu a la consola.



Python 3
import array as arr a = arr.array('i', [1, 2, 3]) print('The new created array is : ', end=' ') for i in range(0, 3): print(a[i], end=' ') print() b = arr.array('d', [2.5, 3.2, 3.3]) print('
The new created array is : ', end=' ') for i in range(0, 3): print(b[i], end=' ')>

Sortida
The new created array is : 1 2 3 The new created array is : 2.5 3.2 3.3>

Complexitats per a la creació de matrius:

Complexitat temporal: O(1)
Espai auxiliar: O(n)

A continuació s'esmenten alguns dels tipus de dades que us ajudaran a crear una matriu a Python 3.8

de diferents tipus de dades.



Ara veurem com utilitzar array a Python 3.8 amb exemple.

Afegir elements a una matriu

Els elements es poden afegir a la matriu Python mitjançant l'ús integrat inserir () funció. Inserir s'utilitza per inserir un o més elements de dades en una matriu. En funció del requisit, es pot afegir un nou element al principi, al final o a qualsevol índex determinat de la matriu. afegir() també s'utilitza per afegir el valor esmentat als seus arguments al final de la matriu de Python.

A continuació, el codi importa primer el matriu mòdul com a matriu d'importació de Python com arr . Aleshores, crea una matriu de nombres enters anomenada a amb elements [1, 2, 3] . Al codi següent, la matriu d'impressió de Python com a matriu s'imprimeix abans i després d'inserir l'enter 4 a l'índex 1. De la mateixa manera, una matriu de dobles anomenada b amb elements [2.5, 3.2, 3.3] es crea i s'imprimeix abans i després d'afegir el doble 4.4 a la matriu.

Python 3
import array as arr a = arr.array('i', [1, 2, 3]) print('Array before insertion : ', end=' ') for i in range(0, 3): print(a[i], end=' ') print() a.insert(1, 4) print('Array after insertion : ', end=' ') for i in (a): print(i, end=' ') print() b = arr.array('d', [2.5, 3.2, 3.3]) print('Array before insertion : ', end=' ') for i in range(0, 3): print(b[i], end=' ') print() b.append(4.4) print('Array after insertion : ', end=' ') for i in (b): print(i, end=' ') print()>

Sortida
Array before insertion : 1 2 3 Array after insertion : 1 4 2 3 Array before insertion : 2.5 3.2 3.3 Array after insertion : 2.5 3.2 3.3 4.4>

Complexitats per afegir elements a les matrius

Complexitat temporal: O(1)/O(n) ( O(1) - per inserir elements al final de la matriu, O (n) - per inserir elements al principi de la matriu i a la matriu completa
Espai auxiliar: O(1)

Accés a elements des de la matriu

Per accedir als elements de la matriu, consulteu el número d'índex. Utilitzeu l'operador d'índex [ ] per accedir a un element d'una matriu en Python. L'índex ha de ser un nombre enter.

A continuació, el codi mostra primer com importar la matriu de Python i l'ús de la indexació per accedir als elements de les matrius. Ela[0]>expression accedeix al primer element de la matriua>, que és 1. Ela[3]>expression accedeix al quart element de la matriua>, que és 4. De la mateixa manera, elb[1]>expression accedeix al segon element de la matriub>, que és 3.2, i elb[2]>expression accedeix al tercer element de la matriub>, que és 3.3.

matriu d'estructura en llenguatge c
Python 3
import array as arr a = arr.array('i', [1, 2, 3, 4, 5, 6]) print('Access element is: ', a[0]) print('Access element is: ', a[3]) b = arr.array('d', [2.5, 3.2, 3.3]) print('Access element is: ', b[1]) print('Access element is: ', b[2])>

Sortida:

Access element is: 1 Access element is: 4 Access element is: 3.2 Access element is: 3.3>

Complexitats per accedir als elements dels Arrays

Complexitat temporal: O(1)
Espai auxiliar: O(1)

Eliminació d'elements de la matriu

Els elements es poden eliminar de la matriu Python mitjançant l'ús integrat eliminar () funció, però sorgeix un error si l'element no existeix al conjunt. El mètode Remove() només elimina un element alhora, per eliminar el rang d'elements, s'utilitza un iterador. pop() La funció també es pot utilitzar per eliminar i retornar un element de la matriu, però per defecte només elimina l'últim element de la matriu, per eliminar l'element d'una posició específica de la matriu, l'índex de l'element es passa com a argument a la matriu. mètode pop().
Nota - Elimina el mètode de la llista només eliminarà la primera ocurrència de l'element cercat.

A continuació, el codi mostra com importar una matriu de Python, com crear, imprimir, eliminar elements i accedir a elements d'una matriu a Python. Importa elarray>mòdul, que s'utilitza per treballar amb matrius. Crea una matriu d'enters i Python imprimeix matrius o imprimeix la matriu original. A continuació, elimina un element de la matriu i imprimeix la matriu modificada. Finalment, elimina totes les ocurrències d'un element específic de la matriu i imprimeix la matriu actualitzada

Python 3
import array arr = array.array('i', [1, 2, 3, 1, 5]) print('The new created array is : ', end='') for i in range(0, 5): print(arr[i], end=' ') print('
') print('The popped element is : ', end='') print(arr.pop(2)) print('The array after popping is : ', end='') for i in range(0, 4): print(arr[i], end=' ') print('
') arr.remove(1) print('The array after removing is : ', end='') for i in range(0, 3): print(arr[i], end=' ')>

Sortida
The new created array is : 1 2 3 1 5 The popped element is : 3 The array after popping is : 1 2 1 5 The array after removing is : 2 1 5>

Complexitats per eliminar elements de les matrius

Complexitat temporal: O (1)/O (n) ( O (1) - per eliminar elements al final de la matriu, O (n) - per eliminar elements al principi de la matriu de creació de Python i a la matriu completa
Espai auxiliar: O(1)

Tallament d'una matriu

A la matriu Python, hi ha diverses maneres d'imprimir tota la matriu amb tots els elements, però per imprimir un rang específic d'elements de la matriu, utilitzem Operació de tall . L'operació de tall es realitza a la matriu amb l'ús de dos punts (:). Per imprimir elements des de l'inici a un interval, utilitzeu [:Index], per imprimir elements des de l'ús final [:-Index], per imprimir elements des d'un índex específic fins a l'ús final [Index:], per imprimir elements dins d'un interval, utilitzeu [ Inici índex:Final índex] i per imprimir la llista sencera amb l'ús de l'operació de tall, utilitzeu [:]. A més, per imprimir tota la matriu en ordre invers, utilitzeu [::-1].

Aquest codi utilitza el tall per extreure elements o subarrays d'una matriu. Comença amb una matriu inicial de nombres enters i crea una matriu a partir de la llista. El codi talla la matriu per extreure elements de l'índex 3 al 8, des de l'índex 5 fins al final, i tota la matriu i, a continuació, la matriu d'impressió de Python al codi com Les matrius en rodanxes s'imprimeixen per demostrar les operacions de tall.

Python 3
import array as arr l = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] a = arr.array('i', l) print('Initial Array: ') for i in (a): print(i, end=' ') Sliced_array = a[3:8] print('
Slicing elements in a range 3-8: ') print(Sliced_array) Sliced_array = a[5:] print('
Elements sliced from 5th ' 'element till the end: ') print(Sliced_array) Sliced_array = a[:] print('
Printing all elements using slice operation: ') print(Sliced_array)>

Sortida
Initial Array: 1 2 3 4 5 6 7 8 9 10 Slicing elements in a range 3-8: array('i', [4, 5, 6, 7, 8]) Elements sliced from 5th element till the end: array('i', [6, 7, 8, 9, 10]) Printing all elements...>

Cerca d'elements en una matriu

Per cercar un element a la matriu, utilitzem un python incorporat índex() mètode. Aquesta funció retorna l'índex de la primera ocurrència del valor esmentat als arguments.

Exemple: El codi mostra com crear una matriu en Python, imprimir els seus elements i trobar els índexs d'elements específics. Importa elarray>mòdul, crea una matriu de nombres enters, imprimeix la matriu utilitzant un bucle for i després utilitza elindex()>mètode per trobar els índexs de les primeres ocurrències dels nombres enters 2 i 1.

Python 3
import array arr = array.array('i', [1, 2, 3, 1, 2, 5]) print('The new created array is : ', end='') for i in range(0, 6): print(arr[i], end=' ') print('
') print('The index of 1st occurrence of 2 is : ', end='') print(arr.index(2)) print('The index of 1st occurrence of 1 is : ', end='') print(arr.index(1))>

Sortida
The new created array is : 1 2 3 1 2 5 The index of 1st occurrence of 2 is : 1 The index of 1st occurrence of 1 is : 0>

Complexitats per a la cerca d'elements als Arrays

Complexitat temporal: O(n)
Espai auxiliar: O(1)

Actualització d'elements en una matriu

Per actualitzar un element de la matriu, simplement reassignem un nou valor a l'índex desitjat que volem actualitzar.

Exemple: Aquest codi il·lustra la funcionalitat de modificar elements dins d'una matriu mitjançant la indexació. Importa elarray>mòdul, crea una matriu d'enters i imprimeix la matriu inicial. A continuació, modifica dos elements de la matriu en índexs específics i imprimeix la matriu actualitzada. Això serveix per demostrar com la indexació permet la manipulació dinàmica del contingut de la matriu.

Python 3
import array arr = array.array('i', [1, 2, 3, 1, 2, 5]) print('Array before updation : ', end='') for i in range(0, 6): print(arr[i], end=' ') print('
') arr[2] = 6 print('Array after updation : ', end='') for i in range(0, 6): print(arr[i], end=' ') print() arr[4] = 8 print('Array after updation : ', end='') for i in range(0, 6): print(arr[i], end=' ')>

Sortida
Array before updation : 1 2 3 1 2 5 Array after updation : 1 2 6 1 2 5 Array after updation : 1 2 6 1 8 5>

Complexitats per a l'actualització d'elements als Arrays

Complexitat temporal: O(n)
Espai auxiliar: O(1)

Diferents operacions en matrius de Python

Comptar elements en una matriu

Per comptar elements d'una matriu hem d'utilitzar el mètode de recompte.

Exemple: El codi mostra com determinar la freqüència d'un element concret dins d'una matriu. Importa elarray>mòdul, crea una matriu d'enters, per crear matrius en Python i compta les ocurrències del número 2 mitjançant elcount()>mètode i, finalment, imprimeix el resultat. Aquest fragment de codi mostra de manera efectiva la capacitat d'analitzar la distribució d'elements en matrius.

instanceof en java
Python 3
import array my_array = array.array('i', [1, 2, 3, 4, 2, 5, 2]) count = my_array.count(2) print('Number of occurrences of 2:', count)>

Sortida
Number of occurrences of 2: 3>

Complexitats per comptar elements en els Arrays

Complexitat temporal: O(n)
Espai auxiliar: O(1)

Invertir elements en una matriu

Per invertir els elements d'una matriu hem d'utilitzar simplement el mètode invers.

Exemple: El codi presentat demostra la funcionalitat d'invertir l'ordre dels elements dins d'una matriu mitjançant el reverse()> mètode. Importa elarray>mòdul, crea una matriu d'enters, imprimeix la matriu original, inverteix l'ordre dels elements utilitzantreverse()>, i després imprimeix la matriu invertida. Això il·lustra de manera efectiva la capacitat de modificar la disposició dels elements en una matriu.

Python 3
import array my_array = array.array('i', [1, 2, 3, 4, 5]) print('Original array:', *my_array) my_array.reverse() print('Reversed array:', *my_array)>

Sortida
Original array: 1 2 3 4 5 Reversed array: 5 4 3 2 1>

Complexitats per invertir elements a les matrius:

Complexitat temporal: O(n)
Espai auxiliar: O(1)

què és un sistema de fitxers Linux

Amplieu l'element des de la matriu

A l'article, tractarem la llista de Python estendre () i intenta entendre el Python list extend().

Què és l'element extend de la matriu?

A Python, una matriu s'utilitza per emmagatzemar diversos valors o elements del mateix tipus de dades en una sola variable. El estendre () La funció simplement s'utilitza per adjuntar un element des de l'iterable fins al final de la matriu. En termes més senzills, aquest mètode s'utilitza per afegir una matriu de valors al final d'una matriu donada o existent.

Sintaxi de la llista extend()

La sintaxi de la estendre () mètode:

list.extend(iterable)>

Aquí, tot l'element de iterable s'afegeix al final de la llista1

Exemple 1:

El codi proporcionat demostra la capacitat d'estendre una matriu per incloure elements addicionals. Importa elarray>mòdul utilitzant un àlies, crea una matriu d'enters, imprimeix la matriu abans de l'extensió, amplia la matriu utilitzant el extend()> mètode i, finalment, imprimeix la matriu ampliada. Això il·lustra de manera concisa la capacitat d'afegir elements a una estructura de matriu existent

Python 3
import array as arr a = arr.array('i', [1, 2, 3,4,5]) print('The before array extend : ', end =' ') for i in range (0, 5): print (a[i], end =' ') print() a.extend([6,7,8,9,10]) print('
The array after extend :',end=' ') for i in range(0,10): print(a[i],end=' ') print()>

Sortida
The before array extend : 1 2 3 4 5 The array after extend : 1 2 3 4 5 6 7 8 9 10>

Exemple 2:

El codi proporcionat demostra la capacitat d'estendre matrius amb diversos tipus de dades, inclosos nombres enters i flotants. Utilitza elarray>mòdul, crea matrius dels dos tipus de dades i les amplia amb el fitxer extend()> mètode. Les matrius s'imprimeixen abans i després de l'extensió per il·lustrar els canvis. Això mostra de manera efectiva la capacitat d'afegir elements a matrius de diferents representacions de dades.

Python 3
import array as arr a=arr.array('i',[1,2,3,4,5,6]) print('The Before extend array is :',end=' ') for i in range(0,6): print(a[i],end=' ') print() a.extend([7,8,9,10,11,12]) print('
The After extend array is :',end=' ') for i in range(0,12): print(a[i],end=' ') print() b = arr.array('d', [2.1,2.2,2.3,2.4,2.5,2.6]) print('
The before extend array is :',end=' ') for i in range(0,6): print(b[i],end=' ') print() b.extend([2.6,2.7,2.8,2.9]) print('
The after extend array is :',end=' ') for i in range(0,9+1): print(b[i],end=' ') print()>

Sortida
The Before extend array is : 1 2 3 4 5 6 The After extend array is : 1 2 3 4 5 6 7 8 9 10 11 12 The before extend array is : 2.1 2.2 2.3 2.4 2.5 2.6 The after extend array is : 2.1 2.2 2.3 2.4 2...>

Complexitats per ampliar l'element de la matriu:

Complexitat temporal : O(1)
Espai auxiliar: O(1)

Més informació sobre recursos relacionats amb la matriu Python:

  • Matriu en Python | Set 1 (Introducció i Funcions)
  • Matriu en Python | Set 2 (funcions importants) un