본문 바로가기
Python/기본문법

Python 기본 문법 정리(3)

by rewyear 2024. 2. 17.
Python에서는 리스트(list), 튜플(tuple), 딕셔너리(dictionary) 자료구조에 대한 자료형을 기본으로 제공한다. 

 

리스트

리스트는 C의 배열과 같이 요소들을 한번에 저장할 수 있는 자료구조이다.

대괄호 '[]' 를 사용하며, 리스트의 요소들은 쉼표로 ',' 구분함.

list_name = [item0, item1, item2, ...]

 

리스트는 C의 배열과는 다르게 하나의 리스트에 여러 자료형을 저장할 수 있다.

a = [] 'empty 리스트를 생성하는 경우 a = list()와 같이 생성할 수도 있음. '
b = [1, 2, 3]
c = ['Life', 'is', 'too', 'short']
d = [1, 2, 'Life', 'is'] '숫자와 문자열이 혼용된 리스트'
e = [1, 2, ['Life', 'is']] '리스트 자체도 요소가 될 수 있음'

 

 

list 인덱싱

리스트 요소에 대한 접근은 인덱스를 이용하여 접근

'리스트 명을 출력하면 리스트 자체를 출력'
>>> a = [1, 2, 3]
>>> a
[1, 2, 3]

'첫 번째 요소의 인덱스는 0부터 시작'
>>> a[0]
1

>>> a[0] + a[2]
4

'''
인덱스에 음수를 사용하면 inverse되어 뒤에서 부터 인덱싱
-1의 경우 마지막 요소를 가리킴.
'''
>>> a[-1]
3

' 이차원 리스트의 경우 list_name[][]의 형태로 접근 '
>>> a = [1, 2, 3, ['a', 'b', 'c']]
>>> a[4][1]
'b'

 

list 슬라이싱

리스트의 인덱스를 이용하여 특정 구간의 요소를 잘라 사용할 수 있음.

이를 '슬라이싱' 한다고 함.

>>> a = [1, 2, 3, 4, 5]
>>> b = a[:2] '처음 요소부터 2번째 요소 전까지'
>>> c = a[2:] '2번째 요소부터 마지막 까지'
>>> b
[1, 2]
>>> c
[3, 4, 5]

 

list operation 

리스트 자료구조는 다양한 연산이나 method를 제공함

리스트 연산

'''
list addtion(list1 + list2)
리스트 간 덧셈은 두 개의 리스트 항목을 합침.
순서는 앞의 리스트의 요소 이후에 뒷 리스트 요소들이 append되는 형식
'''
>>> a = [1, 2, 3]
>>> b = [4, 5, 6]
>>> c = a + b
>>> c
[1, 2, 3, 4, 5, 6]

'''
list iterate
리스트를 '*'를 통해 반복할 수 있음
'''
>>> a = [1, 2, 3]
>>> a * 3
[1, 2, 3, 1, 2, 3, 1, 2, 3]

 

리스트 관련 함수

'list length, 리스트의 길이(요소 수)를 구할수 있음'
>>> a = [1, 2, 3]
>>> len(a)
3

'list append, 리스트의 맨 뒤에 항목을 하나 추가'
>>> a = [1, 2, 3]
>>> a.append(4)
>>> a
[1, 2, 3, 4]

'list insert, 리스트에다가 지정한 위치에 항목 삽입'
>>> a = [1, 2, 3]
>>> a.insert(0, 4)
>>> a
[4, 1, 2, 3]

'list sort, 리스트를 오름차순 or 알파벳 순서로 정렬'
>>> a = [1, 4, 3, 2]
>>> a.sort()
>>> a
[1, 2, 3, 4]

>>> a = ['a', 'c', 'b']
>>> a.sort()
>>> a
['a', 'b', 'c']

'list reverse, 리스트 순서를 뒤집음'
>>> a = ['a', 'c', 'b']
>>> a.reverse()
>>> a
['b', 'c', 'a']

'list index, 해당 리스트에 요소가 있으면 위치(인덱스) 반환'
>>> a = [1, 2, 3]
>>> a.index(3)
2
>>> a.index(1)
0

'''
list remove(idx), 인자로 제거한 요소 제거
(리스트에 해당 항목이 다수 존재하는 경우 처음 나오는 요소를 제거)
'''
>>> a = [1, 2, 3, 1, 2, 3]
>>> a.remove(3)
>>> a
[1, 2, 1, 2, 3]

'''
list pop, 맨 마지막 요소를 제거하면서 값 리턴
인덱스 값을 전달할 경우 해당 위치 요소를 제거하면서 값 리턴
'''
>>> a = [1, 2, 3]
>>> a.pop()
3
>>> a
[1, 2]

'list count, 인자로 전달된 요소가 해당 list에 몇 개 있는지 count'
>>> a = [1, 2, 3, 1]
>>> a.count(1)
2

 

300x250

'Python > 기본문법' 카테고리의 다른 글

Python 기본 문법 정리(5)  (0) 2024.07.17
Python 기본 문법 정리(4)  (0) 2024.07.17
Python 기본 method  (0) 2024.02.17
Python 기본 문법 정리(2)  (0) 2024.02.17
Python 기본 문법 정리(1)  (0) 2024.02.17