Python 2D nizovi: primjeri dvodimenzionalnih popisa

โšก Pametni saลพetak

Python 2D niz je niz smjeลกten unutar drugog niza, formirajuฤ‡i retke i stupce poput tablice. Primjeri u nastavku pokazuju kako stvoriti, pristupiti, umetnuti, aลพurirati, izbrisati i promijeniti veliฤinu 2D nizova.

  • ๐Ÿงฑ Struktura: 2D niz je niz nizova u retcima i stupcima.
  • ๐Ÿ”ข Indeksiranje: Pristup elementu pomoฤ‡u niz[redak][stupac]; indeksi poฤinju od 0.
  • โž• Umetni i aลพuriraj: Dodajte retke pomoฤ‡u insert() i promijenite vrijednosti po indeksu.
  • ๐Ÿ—‘๏ธ Izbriลกi i prilagodi veliฤinu: Uklonite retke s del i prebrojite retke s len().
  • ๐Ÿ” Iteracija: Koristite ugnijeลพฤ‘ene for petlje za pomicanje kroz retke i stupce.
  • ๐Ÿงฎ NumPy opcija: Za zahtjevne numeriฤke zadatke, stvorite prave 2D nizove pomoฤ‡u numpy.array() radi brzine.

Python 2D niz

ล to je dvodimenzionalni niz u Python?

Niz je struktura podataka koja se koristi za pohranu elemenata. Niz moลพe pohraniti samo sliฤne vrste elemenata. Dvodimenzionalni je definiran kao niz unutar niza. Indeks niza poฤinje s 0 i zavrลกava s veliฤinom niza minus 1. Moลพemo stvoriti 'n' broj nizova u nizu.

Python 2D nizovi

Na gornjoj slici moลพemo vidjeti da indeks jedinstveno identificira svaki element niza.

Kako stvoriti niz u Python?

Moลพemo stvoriti dvodimenzionalni niz (popis) s redovima i stupcima.

Sintaksa:

[[r1,r2,r3,..,rn],[c1,c2,c3,.......,cn]]

Gdje,

r oznaฤava retke, a c oznaฤava stupce

Primjer: Slijedi primjer za stvaranje

2D niz s 4 retka i 5 stupaca

array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]
#display
print(array)

Izlaz:

[[23, 45, 43, 23, 45], [45, 67, 54, 32, 45], [89, 90, 87, 65, 44], [23, 45, 67, 32, 10]]

Pristup vrijednostima

Vrijednostima moลพemo pristupiti pomoฤ‡u pozicije indeksa

Sintaksa:

Vrijednost retka moลพemo dobiti pomoฤ‡u [] operater

array[row index]

Vrijednost stupca moลพemo dobiti pomoฤ‡u [][]

Array[row index][column index]

gdje,

  • niz je ulazni niz
  • Indeks retka je poloลพaj indeksa retka koji poฤinje od 0
  • indeks stupca je poloลพaj indeksa stupca koji poฤinje od 0 u nizu.

Primjer:

U ovom primjeru pristupit ฤ‡emo vrijednostima pomoฤ‡u indeksnih pozicija

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#display
print(array)

#get the first row
print(array[0])

#get the third row
print(array[2])

#get the first row third element
print(array[0][2])

#get the third row forth element
print(array[2][3])

Izlaz:

[[23, 45, 43, 23, 45], [45, 67, 54, 32, 45], [89, 90, 87, 65, 44], [23, 45, 67, 32, 10]]
[23, 45, 43, 23, 45]
[89, 90, 87, 65, 44]
43
65

Takoฤ‘er moลพemo pristupiti elementima pomoฤ‡u for loop

Sintaksa:

for rows in the array:
  for columns in rows:
    print(columns)

gdje,

  • rows se koriste za ponavljanje red po red
  • stupaca koristi se za ponavljanje vrijednosti prisutnih u svakom retku.

Primjer:

Creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#use for loop to iterate the array
for rows in array:
 for columns in rows:
   print(columns,end=" ")
   print()

Izlaz:

23 45 43 23 45
45 67 54 32 45
89 90 87 65 44
23 45 67 32 10

Umetanje vrijednosti u dvodimenzionalni niz

Ovdje ฤ‡emo umetnuti vrijednosti u dvodimenzionalni niz pomoฤ‡u funkcije insert().

Sintaksa:

array.insert(index,[values])

gdje,

  • niz je ulazni niz
  • indeks je pozicija retka za umetanje odreฤ‘enog retka
  • vrijednost su vrijednosti koje treba umetnuti u polje

Primjer: Umetanje u vrijednosti u nizu

#Create 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#insert the row at 5 th position
array.insert(2, [1,2,3,4,5])

#insert the row at 6 th position
array.insert(2, [1,2,3,4,5])

#insert the row at 7 th position
array.insert(2, [1,2,3,4,5])

#display
print(array)

Izlaz:

[[23, 45, 43, 23, 45], [45, 67, 54, 32, 45], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], [89, 90, 87, 65, 44], [23, 45, 67, 32, 10]]

Aลพuriranje vrijednosti u dvodimenzionalni niz

Ovdje su dvije metode za aลพuriranje vrijednosti u 2-D polju (popis).

Redove moลพete aลพurirati pomoฤ‡u sljedeฤ‡e sintakse

array[row_index]= [values]

Vrijednosti stupaca unutar redaka moลพete aลพurirati pomoฤ‡u sljedeฤ‡e sintakse

array[row_index][column_index]= [values]

Primjer:

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#update row values in the 3rd row
array[2]=[0,3,5,6,7]

#update row values in the 5th row
array[2]=[0,3,5,6,7]

#update the first row , third column
array[0][2]=100

#update the second row , third column
array[1][2]=400

#display
print(array)

Izlaz:

[[23, 45, 100, 23, 45], [45, 67, 400, 32, 45], [0, 3, 5, 6, 7], [23, 45, 67, 32, 10]]

Brisanje vrijednosti iz dvodimenzionalnog niza

Redove moลพete brisati pomoฤ‡u del funkcija

Sintaksa:

del array[index]

gdje,

  • niz je ulazni niz
  • indeks se odnosi na indeks retka

Primjer:

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]

#delete row values in the 3rd row
del array[2]

#delete row values in the 2nd row
del array[1]

#display
print(array)

Izlaz:

[[23, 45, 43, 23, 45], [23, 45, 67, 32, 10]]

Dobijte veliฤinu dvodimenzionalnog niza

Veliฤinu dvodimenzionalnog niza moลพete dobiti pomoฤ‡u funkcije line(). Vratit ฤ‡e broj redaka u nizu

Sintaksa:

len(array)

Primjer:

Dobijte duljinu dvodimenzionalnog niza

#creare 2D array with 4 rows and 5 columns
array=[[23,45,43,23,45],[45,67,54,32,45],[89,90,87,65,44],[23,45,67,32,10]]
#display
print(len(array))

Izlaz:

4

Vaลพno Python Metode niza (liste)

Evo nekoliko vaลพnih metoda polja (popisa).

naฤin Description Sintaksa Primjer
Dodati(): Ova metoda nam pomaลพe da dodamo element na kraj postojeฤ‡eg niza. array.append(vrijednost)
# Adding an element using append method to the end of an array array=[1,2,3] array.append(4) print(array)

Izlaz:

[1,2,3,4]
ฤŒisto(): Ova metoda nam pomaลพe ukloniti sve elemente prisutne u nizu array.clear()
# Removing all the elements from an array array=[1,2,3]
array.clear()

Izlaz:

[]
Kopirati(): Ova metoda nam pomaลพe kopirati sadrลพaj niza u novi niz niz1=niz.copy()
#Copying the elements from an array to a new array array=[1,2,3] array1=[]
array1=array.copy()
  print(array1)

Izlaz:

[1,2,3]
Raฤunati(): Ova metoda nam pomaลพe da izbrojimo broj pojavljivanja odreฤ‘enog elementa u nizu array.count(element)
#Counting the no of times an element is present in an array array=[1,2,3]
print(array.count(8))
 Output: 0
Proลกiri(): Ova metoda nam pomaลพe da proลกirimo niz izvan njegovih elemenata. array.extend(array1)
#Extending an existing array with another array array=[1,2,3] array1=[4,5,6] array.extend(array1) print(array)
Output: [1,2,3,4,5,6]
Indeks(): Ova metoda nam pomaลพe pronaฤ‡i indeks elementa u nizu array.index(element)
#returing the index an element in an array array=[1,2,3]
print(array.index(3))

Izlaz:

2
Umetnuti(): Ova metoda nam pomaลพe da umetnemo elemente u polje na odreฤ‘enom indeksu. array.insert(index,element)
#Inserting an element at a specified index into an array array=[1,2,3]
array.insert(2,4)
  print(array)

Izlaz:

[1,2,4,3]
pop(): Ova metoda nam pomaลพe ukloniti element na odreฤ‘enom indeksu niz.pop(indeks)
#Removing an element at specified index through pop method
array=[1,2,3]
array.pop(2)
  print(array)

Izlaz:

[1,2]
Ukloniti(): Ova metoda nam pomaลพe ukloniti odreฤ‘eni podudarni element u nizu. array.remove(element)
array=[1,2,3]
array.remove(2)
  print(array)

Izlaz:

[1,3]
Reverse() Ova metoda pomaลพe u preokretanju elemenata u nizu. array.reverse()
array=[1,2,3,4]
array.reverse()
  print(array)

Izlaz:

[4,3,2,1]

Pitanja i odgovori

In Python, 2D niz se obiฤno implementira kao popis popisa, tako da ta dva pojma znaฤe isto. Za brzi numeriฤki rad, NumPy biblioteka nudi namjenski tip stvarnog niza.

Uvezite NumPy, a zatim proslijedite popis popisa funkciji numpy.array(), na primjer np.array([[1,2],[3,4]]). NumPy nizovi podrลพavaju brzu matematiku po elementima, rezanje i preoblikovanje.ping to obiฤne liste popisa ne mogu uฤiniti uฤinkovito.

Koristite popisno razumijevanje kao ลกto je [[0]*cols for _ in range(rows)]. Izbjegavajte [[0]*cols]*rows, jer ponavlja istu unutarnju referencu liste, pa ureฤ‘ivanje jednog retka sluฤajno mijenja svaki redak.

Koristite len(array) za broj redaka i len(array[0]) za stupce u prvom retku. S NumPy, atribut shape vraฤ‡a obje vrijednosti kao (retci, stupci) tuple.

Popis pohranjuje mjeลกovite tipove podataka i nalazi se u rasprลกenoj memoriji. NumPy niz pohranjuje jedan tip podataka u kontinuiranoj memoriji, koristi manje prostora i izvrลกava numeriฤke operacije puno brลพe jer se izvrลกavaju u C-u.

Koristite ugnijeลพฤ‘ene for petlje: vanjska petlja iterira kroz svaki redak, a unutarnja petlja iterira kroz stupce unutar tog retka. To vam omoguฤ‡uje ฤitanje ili aลพuriranje svakog elementa poziciju po poziciju.

AI asistenti mogu generirati 2D kod polja, objasniti pogreลกke indeksa, pisati ugnijeลพฤ‘ene petlje i pretvarati izmeฤ‘u popisa popisa i NumPy polja, ลกto ubrzava uฤenje i svakodnevne zadatke s podacima.

Da. GitHub Copilot automatski dovrลกava stvaranje 2D polja, indeksiranje i prolazak iz komentara, a agentic alati mogu refaktorirati ugnijeลพฤ‘ene petlje ili automatski uoฤiti greลกke koje se razlikuju jedan za drugim u datoteci.

Saลพmite ovu objavu uz: