Masyvo modulis Python

Python masyvai yra konteinerio tipas, kuriame galima saugoti daugiau to paties duomenų tipo elementų efektyviai . Juos suteikia įmontuotas masyvo modulis ir yra naudingi dirbant su dideliais skaitinių duomenų kiekiais, kai svarbus našumas ir atminties efektyvumas.

Kodėl mums reikia masyvų?

  1. Efektyviai saugokite ir valdykite dideles to paties tipo duomenų kolekcijas.
  2. Vartokite mažiau atminties ir pasiūlykite greitesnį našumą nei skaitinių operacijų sąrašai.
  3. Idealiai tinka matematiniams ir moksliniams skaičiavimams, kai duomenų tipo nuoseklumas yra labai svarbus.
  4. Palaikykite elementų operacijas ir indeksavimą, kad galėtumėte greitai apdoroti duomenis.
  5. Naudinga dirbant su žemo lygio duomenų struktūromis ir sąveikaujant su C arba dvejetainiais failais.

Masyvų savybės

  • Kiekvienas masyvo elementas yra to paties tipo ir dydžio. Pavyzdžiui: sveikųjų skaičių masyve su int duomenų tipu kiekvienas masyvo elementas užims 4 baitus.
  • Masyvo elementai saugomi gretimose atminties vietose.

Masyvo funkcija

The masyvas () funkcija iš Python masyvo modulio sukuria masyvą su nurodyto duomenų tipo elementais. Jis naudojamas homogeniniams duomenims saugoti.

Sintaksė:

masyvas(tipo kodas [reikšmė1 vertė2 ...])

Parametras:

  • tipo kodas: Vienas simbolis, nurodantis duomenų tipą (pvz., „i“ – sveikieji skaičiai, „f“ – plūdiniai).
  • verčių sąrašas: Sąrašas (arba kartojamas) verčių, atitinkančių nurodytą tipo kodą.

Kai kurie duomenų tipai paminėti toliau esančioje lentelėje:

Tipo kodas C tipas Python tipas Mažiausias dydis baitais
"b" pasirašytas char tarpt 1
"B" nepasirašytas char tarpt 1
"į" Py_UNICODE Unicode simbolis 2
'h' pasirašė trumpai tarpt 2
"H" nepasirašytas trumpas tarpt 2
"aš" pasirašė tarpt tarpt 2
"aš" nepasirašytas tarpt tarpt 2
"aš" pasirašė ilgai tarpt 4
"L" nepasirašytas ilgas tarpt 4
'q' pasirašė ilgai ilgai tarpt 8
'Q' nepasirašytas ilgas ilgas tarpt 8
"f" plūduriuoti plūduriuoti 4
'd' dvigubai plūduriuoti 8

Operacijos masyve

Python masyvai palaiko įvairius integruotus metodus, leidžiančius efektyviai manipuliuoti ir valdyti jų elementus. Šios operacijos padeda pašalinti masyve esančius paieškos ar modifikavimo duomenis.

Išnagrinėkime kiekvieną masyvo metodą po vieną su paprastu paaiškinimu ir pavyzdžiu:

1. Pridėti() metodas

append() metodas prideda nurodytą reikšmę masyvo pabaigoje.

Pavyzdys: Šis kodas parodo, kaip sukurti sveikųjų skaičių masyvą naudojant masyvo modulį ir pridėti prie jo naują reikšmę naudojant append() metodą. Pirmiausia išspausdinamas originalus masyvas, pabaigoje pridedamas skaičius 4 ir galiausiai rodomas atnaujintas masyvas.

Python
   import   array   # initializing array with array values and signed integers   arr   =   array  .  array  (  'i'     [  1     2     3  ])   # printing original array   print   (  'The new created array is :'    end  =  ' '  )   for   i   in   range   (  0     3  ):   print   (  arr  [  i  ]   end  =  ' '  )   print  (  '  r  '  )   # using append() to insert new value at end   arr  .  append  (  4  )   # printing appended array   print  (  'The appended array is : '     end  =  ''  )   for   i   in   range   (  len  (  arr  )):   print   (  arr  [  i  ]   end  =  ' '  )   

Išvestis
The new created array is : 1 2 3 The appended array is : 1 2 3 4  

2. Insert() metodas

įterpti () metodas naudojamas norint pridėti vertę prie konkretaus masyvo indekso. Įterpiama dviejų argumentų padėtis, kurioje elementas turi būti įterptas, ir reikšmė, kurią reikia įterpti.

Pavyzdys: Tai parodo, kaip naudoti įterpti () būdas pridėti elementą konkrečioje masyvo vietoje. Pradedama sukūrus pasirašytų sveikųjų skaičių masyvą, išspausdinamas pradinis masyvas, tada į 2 indeksą įterpiama reikšmė 5.

Python
   import   array   # initializing array with array values and signed integers   arr   =   array  .  array  (  'i'     [  1     2     3  ])   # printing original array   print   (  'The new created array is : '    end  =  ' '  )   for   i   in   range   (  0     3  ):   print   (  arr  [  i  ]   end  =  ' '  )   arr  .  insert  (  2     5  )   print  (  '  r  '  )   # printing array after insertion   print   (  'The array after insertion is : '     end  =  ''  )   for   i   in   range   (  len  (  arr  )):   print   (  arr  [  i  ]   end  =  ' '  )   

Išvestis
The new created array is : 1 2 3 The array after insertion is : 1 2 5 3  

3. Pop() metodas

pop() metodas naudojamas elementui pašalinti ir grąžinti nurodytu masyvo indeksu. Jei indeksas nenurodytas, paskutinis elementas pašalinamas pagal numatytuosius nustatymus.

Pavyzdys: Šiame pavyzdyje parodyta, kaip naudoti pop() metodą. Pirmiausia jis inicijuoja masyvą su sveikųjų skaičių reikšmėmis, tada pašalina 2 indekso elementą naudodamas pop(2) ir išspausdina pašalintą elementą.

Python
   import   array   # initializing array with array values   arr  =   array  .  array  (  'i'  [  1     2     3     1     5  ])   # printing original array   print   (  'The new created array is : '    end  =  ''  )   for   i   in   range   (  0    5  ):   print   (  arr  [  i  ]  end  =  ' '  )   print  (  '  r  '  )   # using pop() to remove element at 2nd position   print   (  'The popped element is : '    end  =  ''  )   print   (  arr  .  pop  (  2  ))   # printing array after popping   print   (  'The array after popping is : '    end  =  ''  )   for   i   in   range   (  len  (  arr  )):   print   (  arr  [  i  ]  end  =  ' '  )   

Išvestis
The new created array is : 1 2 3 1 5 The popped element is : 3 The array after popping is : 1 2 1 5  

4. Pašalinimo() metodas

Remove() metodas naudojamas norint ištrinti pirmą konkrečios reikšmės atvejį iš masyvo.

Pavyzdys: Šis kodas parodo, kaip naudoti Remove() metodą, kad būtų pašalintas pirmasis nurodytos reikšmės pasireiškimas (šiuo atveju 1).

Python
   import   array   arr  =   array  .  array  (  'i'  [  1     2     3     1     5  ])   # printing original array   print   (  'The new created array is : '    end  =  ''  )   for   i   in   range   (  0    5  ):   print   (  arr  [  i  ]  end  =  ' '  )   print  (  '  r  '  )   # using remove() to remove 1st occurrence of 1   arr  .  remove  (  1  )   # printing array after removing   print   (  'The array after removing is : '    end  =  ''  )   for   i   in   range   (  len  (  arr  )):   print   (  arr  [  i  ]  end  =  ' '  )   

Išvestis
The new created array is : 1 2 3 1 5 The array after removing is : 2 3 1 5  

5. Indekso() metodas

index() metodas naudojamas norint rasti pirmojo nurodytos reikšmės masyve vietą.

Pavyzdys: Šis kodas parodo, kaip naudoti indekso () metodą. Pirmiausia sukuriamas sveikųjų skaičių masyvas, išspausdinamas pradinis masyvas, o tada, naudojant arr.index(2), suranda pirmojo 2 reikšmės pasireiškimo indeksą.

Python
   import   array   # initializing array with array values   arr  =   array  .  array  (  'i'  [  1     2     3     1     2     5  ])   # printing original array   print   (  'The new created array is : '    end  =  ''  )   for   i   in   range   (  0    6  ):   print   (  arr  [  i  ]  end  =  ' '  )   print  (  '  r  '  )   # using index() to print index of 1st occurrence of 2   print   (  'The index of 1st occurrence of 2 is : '    end  =  ''  )   print   (  arr  .  index  (  2  ))   

Išvestis
The new created array is : 1 2 3 1 2 5 The index of 1st occurrence of 2 is : 1 

6. Atvirkštinis() metodas

Reverse() metodas naudojamas masyvo elementams pakeisti vietoje.

Pavyzdys: Į Šiame pavyzdyje reverse() metodas taikomas norint pakeisti elementų tvarką vietoje ir galiausiai išspausdinamas atvirkštinis masyvas.

Python
   import   array   # initializing array with array values   arr  =   array  .  array  (  'i'  [  1     2     3     1     2     5  ])   # printing original array   print   (  'The new created array is : '    end  =  ''  )   for   i   in   range   (  0    6  ):   print   (  arr  [  i  ]  end  =  ' '  )   print  (  '  r  '  )   #using reverse() to reverse the array   arr  .  reverse  ()   # printing array after reversing   print   (  'The array after reversing is : '    end  =  ''  )   for   i   in   range  (  len  (  arr  )):   print   (  arr  [  i  ]  end  =  ' '  )   

Išvestis
The new created array is : 1 2 3 1 2 5 The array after reversing is : 5 2 1 3 2 1  

Susijęs straipsnis

Masyvas Python | 2 rinkinys (svarbios funkcijos)