Python 2D 배열: XNUMX차원 목록 예

⚡ 스마트 요약

Python 2차원 배열은 다른 배열 안에 배열을 넣어 테이블처럼 행과 열을 형성하는 구조입니다. 아래 예제는 2차원 배열을 생성, 접근, 삽입, 업데이트, 삭제하고 크기를 조정하는 방법을 보여줍니다.

  • 🧱 논리적 구조: 2차원 배열은 행과 열로 이루어진 배열의 배열입니다.
  • 🔢 인덱싱 : 배열의 요소에 접근하려면 배열[행][열] 형식을 사용하세요. 인덱스는 0부터 시작합니다.
  • 삽입 및 업데이트: insert() 함수를 사용하여 행을 추가하고 인덱스를 사용하여 값을 변경하세요.
  • 🗑️ 삭제 및 크기 조정: del을 사용하여 행을 제거하고 len()을 사용하여 행 수를 계산합니다.
  • 🔁 반복: 중첩된 for 루프를 사용하여 행과 열을 순회하세요.
  • 🧮 NumPy 옵션: 복잡한 수치 계산 작업의 경우, 속도 향상을 위해 numpy.array()를 사용하여 실제 2차원 배열을 생성하세요.

Python 2D 어레이

2차원 배열이란 무엇인가요? Python?

배열은 요소를 저장하는 데 사용되는 데이터 구조입니다. 배열은 유사한 유형의 요소만 저장할 수 있습니다. 0차원은 배열 내부의 배열로 정의됩니다. 배열의 인덱스는 1으로 시작하고 배열의 크기에서 XNUMX을 뺀 크기로 끝납니다. 배열에는 'n'개의 배열을 만들 수 있습니다.

Python 2D 배열

위 이미지에서 인덱스가 각 배열 요소를 고유하게 식별하는 것을 볼 수 있습니다.

배열을 만드는 방법 Python?

행과 열로 구성된 XNUMX차원 배열(목록)을 만들 수 있습니다.

통사론:

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

어디에,

r은 행을 나타내고 c는 열을 나타냅니다.

예: 다음은 생성에 대한 예입니다.

2행 4열로 구성된 5차원 배열

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

출력:

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

값에 접근하기

인덱스 위치를 사용하여 값에 액세스할 수 있습니다.

통사론:

다음을 사용하여 행 값을 얻을 수 있습니다. [] 연산자

array[row index]

다음을 사용하여 열 값을 얻을 수 있습니다. [][]

Array[row index][column index]

어디에,

  • 배열은 입력 배열입니다.
  • 행 인덱스는 행 인덱스 위치가 0부터 시작됩니다.
  • 열 인덱스는 행의 0부터 시작하는 열 인덱스 위치입니다.

예:

이 예에서는 인덱스 위치를 사용하여 값에 액세스하겠습니다.

#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])

출력:

[[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

다음을 사용하여 요소에 액세스할 수도 있습니다. for loop

통사론:

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

어디에,

  • 행은 행별로 반복하는 데 사용됩니다.
  • 열은 각 행에 있는 값을 반복하는 데 사용됩니다.

예:

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()

출력:

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

XNUMX차원 배열에 값 삽입

insert() 함수를 사용하여 XNUMX차원 배열에 값을 삽입해 보겠습니다.

구문 :

array.insert(index,[values])

어디에,

  • 배열은 입력 배열입니다.
  • 인덱스는 특정 행을 삽입할 행 위치입니다.
  • value는 배열에 삽입할 값입니다.

예: 배열의 값에 삽입

#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)

출력:

[[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]]

값을 XNUMX차원 배열로 업데이트

2차원 배열(목록)의 값을 업데이트하는 두 가지 방법은 다음과 같습니다.

다음 구문을 사용하여 행을 업데이트할 수 있습니다.

array[row_index]= [values]

다음 구문을 사용하여 행 내부의 열 값을 업데이트할 수 있습니다.

array[row_index][column_index]= [values]

예:

#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)

출력:

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

XNUMX차원 배열에서 값 삭제

다음을 사용하여 행을 삭제할 수 있습니다. del 기능

구문 :

del array[index]

어디에,

  • 배열은 입력 배열입니다.
  • index는 행 인덱스를 나타냅니다.

예:

#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)

출력:

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

XNUMX차원 배열의 크기 구하기

line() 함수를 사용하여 XNUMX차원 배열의 크기를 얻을 수 있습니다. 배열의 행 수를 반환합니다.

통사론:

len(array)

예:

XNUMX차원 배열의 길이 구하기

#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))

출력:

4

중대한 Python 배열(리스트) 메서드

다음은 몇 가지 중요한 Array(list) 메소드입니다.

방법 기술설명 통사론 예시
추가(): 이 방법은 기존 배열의 끝에 요소를 추가하는 데 도움이 됩니다. 배열.추가(값)
# Adding an element using append method to the end of an array array=[1,2,3] array.append(4) print(array)

출력:

[1,2,3,4]
분명한(): 이 방법은 배열에 있는 모든 요소를 ​​제거하는 데 도움이 됩니다. 배열.클리어()
# Removing all the elements from an array array=[1,2,3]
array.clear()

출력:

[]
복사(): 이 방법은 배열의 내용을 새 배열에 복사하는 데 도움이 됩니다. array1=배열.복사()
#Copying the elements from an array to a new array array=[1,2,3] array1=[]
array1=array.copy()
  print(array1)

출력:

[1,2,3]
세다(): 이 방법은 배열에서 지정된 요소의 발생 횟수를 계산하는 데 도움이 됩니다. array.count(요소)
#Counting the no of times an element is present in an array array=[1,2,3]
print(array.count(8))
 Output: 0
연장하다(): 이 방법은 구성 요소 이상으로 배열을 확장하는 데 도움이 됩니다. 배열.확장(배열1)
#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]
색인(): 이 방법은 배열에서 요소의 인덱스를 찾는 데 도움이 됩니다. array.index(요소)
#returing the index an element in an array array=[1,2,3]
print(array.index(3))

출력:

2
끼워 넣다(): 이 방법은 배열의 지정된 인덱스에 요소를 삽입하는 데 도움이 됩니다. array.insert(색인,요소)
#Inserting an element at a specified index into an array array=[1,2,3]
array.insert(2,4)
  print(array)

출력:

[1,2,4,3]
팝(): 이 방법은 지정된 인덱스의 요소를 제거하는 데 도움이 됩니다. array.pop(색인)
#Removing an element at specified index through pop method
array=[1,2,3]
array.pop(2)
  print(array)

출력:

[1,2]
제거하다(): 이 방법은 배열에서 일치하는 특정 요소를 제거하는 데 도움이 됩니다. 배열.제거(요소)
array=[1,2,3]
array.remove(2)
  print(array)

출력:

[1,3]
Reverse() : 이 방법은 배열의 요소를 반대로 바꾸는 데 도움이 됩니다. 배열.역방향()
array=[1,2,3,4]
array.reverse()
  print(array)

출력:

[4,3,2,1]

자주 묻는 질문

In Python일반적으로 2차원 배열은 리스트의 리스트로 구현되므로 두 용어는 같은 의미입니다. 빠른 수치 계산을 위해 NumPy 라이브러리는 전용 배열 타입을 제공합니다.

NumPy를 임포트한 다음, `numpy.array()`에 리스트의 리스트를 전달합니다. 예를 들어 `np.array([[1,2],[3,4]])`와 같이 사용합니다. NumPy 배열은 빠른 요소별 연산, 슬라이싱 및 재구성을 지원합니다.ping 단순한 리스트의 리스트로는 효율적으로 처리할 수 없는 부분입니다.

[[0]*cols for _ in range(rows)]와 같은 리스트 컴프리헨션을 사용하세요. [[0]*cols]*rows는 내부 리스트 참조가 반복되므로 한 행을 편집하면 모든 행이 실수로 변경될 수 있으니 사용하지 마세요.

행의 개수를 구하려면 len(array)를 사용하고, 첫 번째 행의 열 개수를 구하려면 len(array[0])을 사용하세요. NumPy에서 shape 속성은 두 값을 (행, 열) 튜플로 반환합니다.

리스트는 여러 데이터 유형을 혼합하여 저장하고 메모리에 분산되어 있습니다. 반면 NumPy 배열은 하나의 데이터 유형만 연속된 메모리 공간에 저장하고, 메모리 공간을 적게 차지하며, C 언어로 실행되기 때문에 수치 연산 속도가 훨씬 빠릅니다.

중첩된 for 루프를 사용하세요. 바깥쪽 루프는 각 행을 순회하고, 안쪽 루프는 해당 행 내의 열을 순회합니다. 이렇게 하면 각 요소의 위치를 ​​하나씩 읽거나 업데이트할 수 있습니다.

AI 비서는 2차원 배열 코드를 생성하고, 인덱스 오류를 설명하고, 중첩 루프를 작성하고, 리스트의 리스트와 NumPy 배열 간의 변환을 수행할 수 있어 학습 속도와 일상적인 데이터 작업 속도를 향상시킵니다.

네. GitHub Copilot은 주석에서 2차원 배열 생성, 인덱싱 및 순회에 대한 자동 완성 기능을 제공하며, 에이전트 도구는 중첩 루프를 리팩토링하거나 파일 전체에서 오프셋 오류를 자동으로 찾아낼 수 있습니다.

이 게시물을 요약하면 다음과 같습니다.