파이썬 튜토리얼-데이터 타입 배열

Jinku Hu 2023년1월30일
  1. 파이썬 배열 선언
  2. 파이썬 배열 인덱스
  3. 배열 음수 인덱스
  4. 파이썬 배열을 통과
  5. 파이썬 배열 업데이트
  6. 파이썬 배열을 수정하는 다른 방법
  7. 파이썬 배열에서 요소 삭제
  8. 배열 방법
파이썬 튜토리얼-데이터 타입 배열

이 섹션에서는 파이썬에서 배열 요소를 만들고 액세스하는 방법을 배웁니다.

배열은 동일한 데이터 유형의 요소 모음입니다. 배열과 목록의 주요 차이점은 목록에 다른 데이터 유형의 요소가있을 수 있다는 것입니다.

파이썬 프로그래밍에서 배열을 만들려면 배열이 기본 데이터 형식이 아니기 때문에 array 모듈을 가져와야합니다.

from array import *

파이썬 배열 선언

배열을 선언하려면 아래 구문을 따라야합니다.

arrayName = array(typecode, [initializers])

여기서 arrayName 은 배열의 이름이고,typecode 는 배열의 데이터 유형을 결정하고 initializers 는 배열의 값입니다.

이 섹션의 뒷부분에서 typecode 매개 변수에 대해 더 배우게됩니다.

아래 예를 고려하십시오.

a = array("i", [1, 2, 3, 4])

배열의 이름은 a 이고 typecodei 이며 배열의 값은 정수 데이터 유형이되도록 지정합니다. 이 배열에 정수 이외의 값을 저장하려고하면 오류가 발생합니다.

>>> a=array('i', [1,2,3.4,4])
Traceback (most recent call last):
  File "<pyshell#4>", line 1, in <module>
    a=array('i', [1,2,3.4,4])
TypeError: integer argument expected, got float

정수를 포함하는 배열의 예를 확인하십시오.

>>> from array import *
>>> a = array('i', [1,2,3,4])
>>> for i in a:
	print(i)
1
2
3
4

typecode 매개 변수

모수 의미
b 1 바이트의 부호있는 정수
B 1 바이트의 부호없는 정수
u 2 바이트의 유니 코드 문자
h 2 바이트의 부호있는 정수
H 부호없는 2 바이트 정수
i 2 바이트의 부호있는 정수
I 부호없는 2 바이트 정수
l 4 바이트의 부호있는 정수
L 부호없는 4 바이트 정수
f 4 바이트의 부동 소수점 수
d 8 바이트의 부동 소수점 수

파이썬 배열 인덱스

인덱스 연산자[]를 사용하여 배열의 요소를 가져올 수 있습니다.

인덱스 연산자를 사용하여 배열의 요소 검색

>>> a = array('i', [1,2,3,4])
>>> print("First element of array =", a[0])
First element of array = 1
>>> print("Second element of array =", a[1])
Second element of array = 2

index(x)메소드를 사용하여 주어진 값의 인덱스를 얻습니다

index(x)메소드는 처음 나타나는 x 의 가장 작은 인덱스를 반환합니다.

>>> a = array('i', [1,2,3,4])
>>> print("1 is found at location:", a.index(1))
1 is found at location: 0
>>> print("4 is found at location:", a.index(4))
4 is found at location: 3

배열 음수 인덱스

문자열, 리스트, 튜플, range 객체와 같은 다른 파이썬 순차 데이터 유형과 마찬가지로 음수 인덱스를 사용하여 배열의 요소에 액세스할 수도 있습니다.

>>> a = array('i', [1,2,3,4])
>>> print("last element of array:",a[-1])
last element of array: 4

파이썬 배열을 통과

먼저 배열의 길이를 찾으십시오.

len()메소드 배열

len()메소드는 배열의 요소 수를 반환합니다.

>>> a = array('i', [1,2,3,4])
>>> print("length of a:", len(a))
length of a: 4

배열을 반복

for 루프를 사용하여 배열의 요소를 반복 할 수 있습니다.

>>> a = array('i', [1,2,3,4])
>>> for i in range(len(a)):
	print(a[i])
1
2
3
4

또는

>>> a = array('i', [1,2,3,4])
>>> for i in a:
	print(i)
1
2
3
4

파이썬 배열 업데이트

append()

배열 메소드 append()를 사용하여 배열 끝에 항목을 추가 할 수 있습니다.

>>> a = array('i', [1,2,3,4,5,7,8,9])
>>> a.append(10)
>>> print(a)
array('i', [1, 2, 3, 4, 5, 7, 8, 9, 10])

삽입 (i, x)

insert(i, x)메소드를 사용하여 주어진 인덱스 ix 요소를 삽입 할 수 있습니다.

>>> a = array('i', [1,2,3,4,5,7,8,9])
>>> a.insert(3,44)
>>> print(a)
array('i', [1, 2, 3, 44, 4, 5, 7, 8, 9])

확장 (x)

append(x)x 항목을 배열에 하나의 항목으로 추가합니다. extend(x)메소드는 주어진 객체 x 의 모든 요소를 ​​추가하여 배열을 확장하는 올바른 메소드입니다.

>>> a = array('i', [1,2,3,4,5,7,8,9])
>>> a.extend([10,11,12,13,14,15])
>>> print(a)
array('i', [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15])
경고
만약 x 가 또 다른 배열이라면, 정확히 같은 데이터 타입 코드를 가져야하며, 그렇지 않으면 TypeError 가 발생합니다.
x 가 파이썬 배열이 아닌 경우, 반복 가능해야하며 요소는 확장 할 배열과 동일한 데이터 유형을 가져야합니다.

fromlist()

fromlist()는 목록의 항목을 배열에 추가합니다.

>>> a = array('i', [1,2,3,4,5,7,8,9])
>>> l = [10,11]
>>> a.fromlist(l)
>>> print(a)
array('i', [1, 2, 3, 4, 5, 7, 8, 9, 10, 11])

파이썬 배열을 수정하는 다른 방법

역()

reverse()는 배열을 뒤집습니다.

>>> a = array('i', [1,2,3,4,5,7,8,9])
>>> a.reverse()
>>> print(a)
array('i', [9, 8, 7, 5, 4, 3, 2, 1])

+연산자

+연산자를 사용하여 두 개의 배열을 연결할 수 있습니다.

>>> a = array('i', [1,2,3,4,5,7,8,9])
>>> b = array('i', [10,11])
>>> print(a + b)
array('i', [1, 2, 3, 4, 5, 7, 8, 9, 10, 11])

*연산자

*연산자는 배열의 요소를 특정 횟수만큼 반복합니다.

>>> a = array('i', [1,2,3,4,5,7,8,9])
>>> a = a * 2
>>> print(a)
array('i', [1, 2, 3, 4, 5, 7, 8, 9, 1, 2, 3, 4, 5, 7, 8, 9])

여기서 요소는 두 번 반복됩니다.

파이썬 배열에서 요소 삭제

del 문은 배열에서 하나 이상의 항목을 삭제합니다. del 을 사용하여 전체 배열을 삭제할 수도 있습니다.

>>> a = array('i', [1,2,3,4,5,7,8,9])
>>> del a[3]
>>> print(a)
array('i', [1, 2, 3, 5, 7, 8, 9])
>>> del a			#entire array is deleted

제거 (x)

remove()는 배열에서 x 의 첫 번째 발생을 제거합니다.

>>> a = array('i', [1,2,3,4,5,7,8,9,3])
>>> a.remove(3)
>>> print(a)
array('i', [1, 2, 4, 5, 7, 8, 9, 3])

pop()

pop()은 배열에서 마지막 요소를 제거하고 반환합니다.

>>> a = array('i', [1,2,3,4,5,7,8,9])
>>> a.pop()
9
>>> print(a)
array('i', [1, 2, 3, 4, 5, 7, 8])

배열 방법

다음 표는 배열 방법을 설명합니다.

행동 양식 기술
append() 배열의 끝에 항목을 추가
extend() 배열에 둘 이상의 항목을 추가하십시오. 배열의 요소를 다른 배열에 추가하여 작동합니다 (요소를 추가하려는 경우).
삽입() 원하는 위치에 요소를 추가하십시오.
제거() 배열에서 특정 항목을 제거하십시오.
pop() 주어진 위치에서 항목을 제거하고 해당 항목을 반환합니다.
clear() 배열에서 모든 요소를 ​​제거하십시오.
인덱스() 배열에서 일치하는 첫 번째 요소의 인덱스를 반환합니다.
count() 전달 된 총 항목 수를 반환
정렬() 배열의 요소를 오름차순으로 정렬합니다.
역() 배열 요소의 순서를 반대로 바꿉니다.
copy() 이미 존재하는 배열의 복사본을 반환합니다.
작가: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook