파이썬에서는 C언어에서의 배열과 비슷한 리스트라는 게 있다.
리스트 선언은 아래와 같이 할 수 있다.
List1 = ['Saturday', '08', 'June', '2024',['Apple', 'Banana', 'Cheery']]
List2 = []
print("List1: %s" %List1)
print("List2: %s" %List2)
################출력 결과################
List1: ['Saturday', '08', 'June', '2024', ['Apple', 'Banana', 'Cheery']]
List2: []
앞서 설명한 것과 같이 C언어와 매우 비슷한데 C언어의 2차 배열과 같이 선언도 가능하고
아무것도 없는 비어있는 리스트로 선언도 가능하다.
그럼 각 리스트의 각 인덱스는 어떻게 출력 확인해보자.
List1 = ['Saturday', '08', 'June', '2024',['Apple', 'Banana', 'Cheery']]
print("List[0]: %s" %List1[0])
print("List[1]: %s" %List1[1])
print("List[2]: %s" %List1[2])
print("List[3]: %s" %List1[3])
print("List[4]: %s" %List1[4])
print("List[4][2]: %s" %List1[4][2])
################출력 결과################
List[0]: Saturday
List[1]: 08
List[2]: June
List[3]: 2024
List[4]: ['Apple', 'Banana', 'Cheery']
List[4][2]: Cheery
위의 예제와 출력 결과물을 확인하면 이해하기 쉬울 거라고 생각한다.
List[4]의 경우는 리스트 안의 리스트인데 이 경우에는 List[4]로 출력하면 리스트가 통째로 출력되고
List[4][2]로 출력하면 그에 해당하는 항목만 출력된다.
리스트도 문자열과 동일하게 슬라이싱을 할 수 있는데 아래 예제를 참고하자
List1 = ['Saturday', '08', 'June', '2024',['Apple', 'Banana', 'Cheery']]
print("List[0~1]: %s" %List1[0:2])
print("List[3]: %s" %List1[3:4])
print("List[4][0~1]: %s" %List1[4][0:2])
################출력 결과################
List[0~1]: ['Saturday', '08']
List[3]: ['2024']
List[4][0~1]: ['Apple', 'Banana']
예제를 보면 쉽게 이해할 수 있을 것이라고 생각된다.
리스트도 문자열과 동일하게 더하기, 곱하기와 같은 연산이 가능하다
List1 = ['Saturday', '08', 'June', '2024',['Apple', 'Banana', 'Cheery']]
List2 = ['Python', 'is', 'Very', 'Fun',['Cake', 'Milk', 'Coffee']]
List_Sum = List1 + List2
print("List Sum: %s" %List_Sum)
################출력 결과################
List Sum: ['Saturday', '08', 'June', '2024', ['Apple', 'Banana', 'Cheery'], 'Python', 'is',
'Very', 'Fun', ['Cake', 'Milk', 'Coffee']]
더하기의 경우는 위와 같이 List1에 이어서 List2를 이어 붙이는 것으로 보면 된다.
List1 = ['08', 'June', ['Apple', 'Banana']]
List_Multi = List1 * 2
print("List Multi: %s" %List_Multi)
################출력 결과################
List Multi: ['08', 'June', ['Apple', 'Banana'], '08', 'June', ['Apple', 'Banana']]
리스트 곱하기도 마찬가지로 반복을 하게 되면 뒤 부분에 곱한 만큼 반복하여 더한다.
List1 = ['08', 'June', ['Apple', 'Banana']]
List_Multi = List1 * 2
print("List len: %s" %len(List1))
print("List len[1]: %s" %len(List1[1]))
print("List_Multi len: %s" %len(List_Multi))
print("List_Multi len[2][0]: %s" %len(List_Multi[2][0]))
################출력 결과################
List len: 3
List len[1]: 4
List_Multi len: 6
List_Multi len[2][0]: 5
리스트도 문자열과 동일하게 길이를 구할 수 있는데
리스트의 길이를 구할 때 len을 사용하면 리스트의 개수를 return 해준다.
그리고 리스트의 리스트 ['Apple', 'Banana'] 의 경우 1개의 리스트로 간주된다.
추가로 리스트 내의 항목의 길이를 구하고 싶을 때는 위의 예제와 같이 몇 번째 항목인지 작성해 주면 된다.
이어서 리스트 수정과 삭제에 대해서 알아보자.
List1 = ['08', 'June', ['Apple', 'Banana']]
List1[0] = '09' #08을 09로 변경
print("List : %s" %List1)
################출력 결과################
List : ['09', 'June', ['Apple', 'Banana']]
수정하는 방법은 굉장히 간단하다.
변경을 하고 싶은 리스트의 문자에 그대로 입력을 해주면 된다.
List1 = ['08', 'June', ['Apple', 'Banana']]
del List1[2][1]
print("List : %s" %List1)
del List1[2]
print("List : %s" %List1)
################출력 결과################
List : ['08', 'June', ['Apple']]
List : ['08', 'June']
삭제의 경우에는 del을 입력하고 삭제하고 싶은 리스트 항목을 입력하면 된다.
이어서 리스트 관련 함수들을 알아보자.
리스트.sort(reverse =False/True)
리스트를 오름차순 또는 내림차순으로 정렬한다.
인자값은 입력해도 되고 하지 않아도 되는데
입력하지 않거나 False로 입력하면 오름차순으로 정렬되고
True로 입력하면 내림차순으로 정렬된다.
sort 함수 예제
List = ['Cherry', 'Apple', 'Banana', "9", "1"]
List.sort()
print("List : %s" %List)
List.sort(reverse = False)
print("List : %s" %List)
List.sort(reverse = True)
print("List : %s" %List)
################출력 결과################
List : ['1', '9', 'Apple', 'Banana', 'Cherry']
List : ['Cherry', 'Banana', 'Apple', '9', '1']
List : ['1', '9', 'Apple', 'Banana', 'Cherry']
리스트.reverse()
리스트를 역순으로 정렬한다.
reverse 함수 예제
List = ['Cherry', 'Apple', 'Banana', "9", "1"]
List.reverse()
print("List : %s" %List)
################출력 결과################
List : ['1', '9', 'Banana', 'Apple', 'Cherry']
리스트.index(x)
리스트의 인덱스 값을 return 한다.
index 함수 예제
List = ['Cherry', 'Apple', 'Banana', ['9', '1']]
print("Banana index : %s" %List.index('Banana'))
print("1 index : %s" %List[3].index('1'))
################출력 결과################
Banana index : 2
1 index : 1
리스트.insert(삽입할 위치, 삽입할 데이터)
원하는 위치에 특정 항목을 삽입할 수 있다.
insert 함수 예제
List = ['Cherry', 'Apple', 'Banana']
List.insert(1,'Melon')
print("List : %s" %List)
################출력 결과################
List : ['Cherry', 'Melon', 'Apple', 'Banana']
리스트.append(삽입할 데이터)
리스트의 마지막에 원하는 데이터를 삽입할 수 있다.
append 함수 예제
List = ['Cherry', 'Apple', 'Banana']
List.append('Strawberry')
print("List : %s" %List)
################출력 결과################
List : ['Cherry', 'Apple', 'Banana', 'Strawberry']
리스트.extend(더할 리스트)
리스트의 마지막 부분에 다른 리스트를 이어 붙인다.
extend 함수 예제
List1 = ['Cherry', 'Apple', 'Banana']
List2 = ['milk','coffee']
List1.extend(List2)
print("List : %s" %List1)
################출력 결과################
List : ['Cherry', 'Apple', 'Banana', 'milk', 'coffee']
리스트.pop(index)
해당 리스트에서 원하는 index의 항목을 return 하고 삭제한다.
만약 index 값을 입력하지 않으면 맨 마지막 항목이 삭제된다.
pop 함수 예제
List1 = ['Cherry', 'Apple', 'Banana', 'Melon', 'Coffee']
print("List : %s" %List1.pop())
print("List : %s" %List1)
print("List : %s" %List1.pop(1))
print("List : %s" %List1)
################출력 결과################
List : Coffee
List : ['Cherry', 'Apple', 'Banana', 'Melon']
List : Apple
List : ['Cherry', 'Banana', 'Melon']
리스트.count(데이터)
리스트 항목 내 원하는 데이터의 개수를 출력할 수 있다.
count 함수 예제
List1 = ['Cherry', 'Apple', 'Banana', 'Melon', 'Coffee', 'Apple', 'Banana']
print("Apple count : %s" %List1.count('Apple'))
################출력 결과################
Apple count : 2
리스트.remove(데이터)
리스트 내 원하는 항목을 제거할 수 있다.
단, 첫 번째 항목이 제거되고 제거할 항목이 없으면 ValueError가 리턴된다.
remove 함수 예제
List1 = ['Cherry', 'Apple', 'Banana', 'Melon', 'Coffee', 'Apple', 'Banana']
List1.remove('Apple')
print("List : %s" %List1)
List1.remove('Apple')
print("List : %s" %List1)
List1.remove('Apple')
print("List : %s" %List1)
################출력 결과################
List : ['Cherry', 'Banana', 'Melon', 'Coffee', 'Apple', 'Banana']
List : ['Cherry', 'Banana', 'Melon', 'Coffee', 'Banana']
Traceback (most recent call last):
File "d:\0. Work\Type\type.py", line 6, in <module>
List1.remove('Apple')
ValueError: list.remove(x): x not in list
리스트.clear()
리스트 내 모든 항목을 삭제한다.
clear 함수 예제
List1 = ['Cherry', 'Apple', 'Banana', 'Melon', 'Coffee', 'Apple', 'Banana']
List1.clear()
print("List : %s" %List1)
################출력 결과################
List : []
'Python' 카테고리의 다른 글
파이썬, 딕셔너리 사용 방법 (1) | 2024.06.11 |
---|---|
파이썬에서 튜플 사용하는 방법과 리스트와의 차이 (0) | 2024.06.10 |
파이썬의 문자열 - 2편(find, rfind, count, strip, replace, split, upper, lower) (1) | 2024.06.08 |
파이썬의 문자열 - 1편(len, find, rfind) (1) | 2024.06.08 |
파이썬 숫자의 자료형 (0) | 2024.06.07 |