산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> python

Python 배열: 생성, 조작, 고급 연산 전문가 가이드

Python 배열이란?

Python 배열은 연속된 메모리에 동종 요소를 저장하는 컬렉션으로, 리스트보다 효율적 저장과 빠른 수치 연산 제공. 내장 array 모듈이 배열 생성과 조작 담당.

Python 배열 사용 시기

같은 타입의 많은 값 저장과 수치 계산 필요할 때 Python 배열 이상적. 리스트보다 메모리 덜 쓰고 큰 데이터셋에서 더 빠른 접근 제공.

배열 생성 문법

array 모듈 임포트 후 array.array(typecode, initializer) 호출:

import array
my_array = array.array('i', [1, 2, 3])

배열 타입 코드

타입 코드Python 타입C 타입최소 크기(바이트)
'u'유니코드 문자Py_UNICODE2
'b'정수Signed char1
'B'정수Unsigned char1
'h'정수Signed short2
'l'정수Signed long4
'L'정수Unsigned long4
'q'정수Signed long long8
'Q'정수Unsigned long long8
'H'정수Unsigned short2
'f'부동소수Float4
'd'부동소수Double8
'i'정수Signed int2
'I'정수Unsigned int2

요소 접근

요소는 0 기반 인덱스로 접근:

import array
balance = array.array('i', [300, 200, 100])
print(balance[1]) # 200

음수 인덱스나 슬라이싱도 사용 가능:

import array
arr = array.array('q', [3, 9, 6, 5, 20, 13, 19, 22, 30, 25])
print(arr[1:4]) # array('q', [9, 6, 5])
print(arr[7:10]) # array('q', [22, 30, 25])

요소 삽입

insert(index, value)로 특정 위치에 값 삽입:

import array
balance = array.array('i', [300, 200, 100])
balance.insert(2, 150)
print(balance) # array('i', [300, 200, 150, 100])

요소 수정

배열은 가변적; 직접 새 값 할당:

import array
arr = array.array('b', [3, 6, 4, 8, 10])
arr[0] = 99
print(arr) # array('b', [99, 6, 4, 8, 10])

연결도 지원:

import array
first = array.array('b', [4, 6, 8])
second = array.array('b', [9, 12, 15])
combined = first + second
print(combined) # array('b', [4, 6, 8, 9, 12, 15])

요소 제거

Pop 인덱스로 항목 제거:

import array
arr = array.array('b', [20, 25, 30])
arr.pop(2)
print(arr) # array('b', [20, 25])

Del 위치로 요소 삭제:

import array
arr = array.array('b', [10, 4, 5, 5, 7])
del arr[4]
print(arr) # array('b', [10, 4, 5, 5])

Remove 값의 첫 발생 삭제:

import array
arr = array.array('b', [2, 3, 4])
arr.remove(3)
print(arr) # array('b', [2, 4])

검색과 인덱싱

index(value)로 값의 인덱스 찾기:

import array
arr = array.array('b', [2, 3, 4, 5, 6])
print(arr.index(3)) # 1

배열 뒤집기

제자리 뒤집기:

import array
arr = array.array('b', [1, 2, 3])
arr.reverse()
print(arr) # array('b', [3, 2, 1])

유니코드 변환

'u' 타입 배열만 tounicode() 지원:

from array import array
p = array('u', [u'\u0050', u'\u0059', u'\u0054', u'\u0048', u'\u004F', u'\u004E'])
print(p) # array('u', 'PYTHON')
print(p.tounicode()) # PYTHON

요소 세기

count(x)로 발생 횟수 세기:

import array
arr = array.array('b', [2, 3, 5, 4, 3, 3, 3])
print(arr.count(3)) # 4

배열 순회

for 루프로 순회:

import array
arr = array.array('i', [300, 200, 100])
for x in arr:
    print(x)

요약

python

  1. C++ 배열 완전 정복: 선언, 초기화, 포인터 기법
  2. C++ 동적 배열 할당 완벽 가이드: new, delete, 실전 코드 예제
  3. Python str.count() 마스터하기: 문자 및 부분문자열 개수 세기 예제
  4. Python format() 문자열 마스터하기: 명확한 예제로 완전 정복
  5. Python String.find() 메서드 마스터하기: 문법, 예제, 대안 비교
  6. 파이썬 람다 함수 마스터하기: 실용 예제 & 모범 사례
  7. 파이썬 round() 함수 완전 정복: 실용 예제로 이해하기
  8. 파이썬 map() 함수 마스터하기: 문법, 예제, 모범 사례
  9. 파이썬 timeit()으로 실행 시간 측정하기: 실용 예제
  10. 파이썬 type()과 isinstance() 이해하기: 실전 예제