파이썬 배열관련 메소드/내장함수 정리
※ 목록 안의 메소드, 내장함수는 알파벳순으로 정렬되어 있습니다.
메소드(method)
사용방법

목록
append(object)
▶기존에 있던 배열의 마지막에 object(객체)를 추가
arr1 = [1, 2, 3, 4, 5]
arr1.append(6) # 객체 6(정수)을 arr1에 추가
arr1.append('rabbit') # 객체 'rabbit'(문자열)을 arr1에 추가
arr1.append([7, 8, 9]) # 객체 [7,8,9](배열)을 arr1에 추가
arr1.append((10, 11, 12)) # 객체 {10,11,12}(튜플)을 arr1에 추가
print(arr1)

※ 한번의 함수 사용당 하나의 객체를 추가 가능.
append() 메소드를 통해 다수의 객체를 추가하기 위해서는 반복문을 활용.
clear()
▶ 배열의 모든 요소를 제거하고, 빈 배열을 반환
arr1 = ['lion', 'rabbit', 'elephant', 'tiger']
print('수정 전 arr1:', arr1)
arr1.clear()
print('수정 후 arr1', arr1)

count(object)
▶배열 내의 포함된 object의 개수를 반환
arr1 = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 'lion', 'lion']
num_1 = arr1.count(1)
num_2 = arr1.count(2)
num_3 = arr1.count(3)
num_4 = arr1.count(4)
num_lion = arr1.count('lion')
print('arr1 안의 1의 개수:', num_1)
print('arr1 안의 2의 개수:', num_2)
print('arr1 안의 3의 개수:', num_3)
print('arr1 안의 4의 개수:', num_4)
print('arr1 안의 lion의 개수:', num_lion)

※ del 배열명[index]
▶ 기존 배열에서 입력한 index에 해당하는 요소를 제거
arr1 = ['lion', 'tiger', 'elephant', 'birds']
print('수정 전 arr1:', arr1)
del arr1[2]
print('수정 후 arr1:', arr1)

※ 인덱스의 범위 지정
입력되는 index는 하나의 값뿐만 아니라, 특정 범위 역시 가능합니다.
arr1 = ['lion', 'tiger', 'elephant', 'birds', 'duck', 'eagle']
print('수정 전 arr1:', arr1)
del arr1[2:5]
print('수정 후 arr1:', arr1)

extend(iterable)
▶ 기존의 배열의 마지막에 sequence object(연속형 객체)를 추가
arr1 = [1, 2, 3, 4, 5]
arr2 = ['lion', 'rabbit']
arr1.extend(arr2)
print(arr1)

※ append()와 extend()의 차이점
1) extend()는 append()와 다르게 iterable(list, tuple, set, dictionary, string)만 추가 가능
2) extend()로 추가된 iterable의 각 요소는 기존 배열의 새로운 요소로 추가되는 반면,
append()로 추가된 iterable은 해당 iterable 자체가 기존 배열의 새로운 요소로 추가됨.
arr1 = [1, 2, 3, 4, 5]
arr2 = ['lion', 'rabbit']
arr1.extend(arr2)
print('extend()를 통해 생성된 arr1:', arr1)
arr1 = [1, 2, 3, 4, 5]
arr1.append(arr2)
print('append()를 통해 생성된 arr1:', arr1)

index(objcet)
▶ 배열 내의 object의 인덱스 값을 반환
arr1 = ['lion', 'rabbit', 'elephant', 'tiger']
ind_rabbit = arr1.index('rabbit')
print('rabbit의 인덱스:', ind_rabbit)

insert(index, object)
▶ 기존에 있던 배열에 새로운 object를 지정한 index로 추가
arr1 = ['lion', 'rabbit', 'elephant', 'tiger']
print('수정 전 arr1:', arr1)
arr1.insert(2, 'birds')
print('수정 후 arr1', arr1)

※ 입력되는 index와 object의 순서 주의
pop(index)
▶ 기존의 배열에서 index에 해당하는 요소를 제거 및 반환
arr1 = ['lion', 'rabbit', 'elephant', 'tiger']
print('수정 전 arr1:', arr1)
element = arr1.pop(1)
print('수정 후 arr1:', arr1)
print('제거된 요소:', element)

※ pop()
▶ 기존의 배열의 마지막 인덱스에 해당하는 요소를 제거 및 반환
arr1 = ['lion', 'rabbit', 'elephant', 'tiger']
print('수정 전 arr1:', arr1)
element = arr1.pop()
print('수정 후 arr1:', arr1)
print('제거된 요소:', element)

remove(object)
▶ 기존 배열의 object 중에서, 가장 작은 인덱스에 해당하는 object를 제거
(배열 내의 object가 1개인 경우, 해당 object를 제거)
arr1 = [1, 3, 4, 3, 5, 3]
print('수정 전 arr1:', arr1)
arr1.remove(3)
print('수정 후 arr1:', arr1)

reverse()
▶ 배열내의 요소들의 순서를 반대로 정렬
(내림차순, 오름차순의 개념 X)
arr1 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print('수정 전 arr1:', arr1)
arr1.reverse()
print('수정 후 arr1:', arr1)

sort()
▶ 기존 배열내의 요소들을 오름차순으로 정렬
arr1 = [4, 2, 1, 7, 5, 6, 3]
print('수정 전 arr1:', arr1)
arr1.sort()
print('수정 후 arr1:', arr1)

※ sort(reverse = True)
▶ 기존 배열내의 요소들을 내림차순으로 정렬
arr1 = [4, 2, 1, 7, 5, 6, 3]
print('수정 전 arr1:', arr1)
arr1.sort(reverse = True)
print('수정 후 arr1:', arr1)

내장함수
사용방법

목록
len(iterable)
▶ iterable 자료형(string, list, tuple, dictionary, set)의 길이를 반환
str1 = 'apple'
arr1 = [1, 2, 3, 4, 5, 6, 7]
tup1 = (1, 2, 3, 4, 5, 6, 7)
set1 = {1, 2, 3, 4, 5, 6, 7}
dict1 = {'a' : 10, 'b' : 20, 'c' : 30, 'd' : 40}
length_str1 = len(str1)
length_arr1 = len(arr1)
length_tup1 = len(tup1)
length_set1 = len(set1)
length_dict1 = len(dict1)
print('str1의 길이:', length_str1)
print('arr1의 길이:', length_arr1)
print('tup1의 길이:', length_tup1)
print('set1의 길이:', length_set1)
print('dict1의 길이:', length_dict1)

list(iterable)
▶ 튜플, 집합의 자료형을 배열의 자료형으로 변환
tup1 = (1, 2, 3, 4, 5, 6, 7)
print('수정 전 tup1:', tup1)
tup1_convert = list(tup1)
print('수정 후 tup1:', tup1_convert)
set1 = {1, 2, 3, 4, 5, 6, 7}
print('수정 전 set1:', set1)
set1_convert = list(set1)
print('수정 후 set1:', set1_convert)

max(iterable)
▶ 배열, 튜플, 집합의 자료형에서 최댓값을 반환
arr1 = [1, 2, 3, 4, 5, 6, 7]
tup1 = (1, 2, 3, 4, 5, 6, 7)
set1 = {1, 2, 3, 4, 5, 6, 7}
arr1_max = max(arr1)
tup1_max = max(tup1)
set1_max = max(set1)
print('arr1의 최댓값:', arr1_max)
print('tup1의 최댓값:', tup1_max)
print('set1의 최댓값:', set1_max)

min(iterable)
▶ 배열, 튜플, 집합의 자료형에서 최솟값을 반환
arr1 = [1, 2, 3, 4, 5, 6, 7]
tup1 = (1, 2, 3, 4, 5, 6, 7)
set1 = {1, 2, 3, 4, 5, 6, 7}
arr1_min = min(arr1)
tup1_min = min(tup1)
set1_min = min(set1)
print('arr1의 최솟값:', arr1_min)
print('tup1의 최솟값:', tup1_min)
print('set1의 최솟값:', set1_min)

sorted(iterable)
▶ 배열, 튜플, 집합의 자료형을 오름차순으로 정렬한 새로운 배열 생성
arr1 = [4, 1, 3, 2, 6, 7, 5]
tup1 = (4, 1, 3, 2, 6, 7, 5)
set1 = {4, 1, 3, 2, 6, 7, 5}
arr1_sort = sorted(arr1)
tup1_sort = sorted(tup1)
set1_sort = sorted(set1)
print('arr1:', arr1)
print('arr1_sort:', arr1_sort)
print('------------------------------')
print('tup1:', tup1)
print('tup1_sort:', tup1_sort)
print('------------------------------')
print('set1:', set1)
print('set1_sort:', set1_sort)

※ 내장함수 sorted()와 메소드 sort()의 차이점
메소드 sort() : 기존에 있던 배열에서 요소들을 오름차순 정렬 (기존에 있던 배열이 변환)
내장함수 sorted() : 기존에 있던 배열의 요소들을 오름차순 정렬한 새로운 배열 반환 (기존에 있던 배열이 유지됨)
'파이썬의 기본' 카테고리의 다른 글
[파이썬] matplotlib, ax.plot, linestyle, 그래프 선 유형 설정 (0) | 2024.04.04 |
---|---|
[파이썬] 1차원 배열(list)의 슬라이싱(slicing) (12) | 2022.08.09 |
[파이썬] 1차원 배열(list)의 인덱싱 (0) | 2022.08.08 |
[파이썬] 1차원 배열(list)을 생성하는 다양한 방법 (0) | 2022.08.07 |
댓글