PYTHON 리스트

변수에 여러가지 값을 저장하고 싶다면 리스트(list)라는 자료형을 사용하면 된다. 리스트 안에는 또 다른 리스트가 있을 수 있으며, nested list 라고 부른다.

1
리스트[인덱스]
1
2
3
4
5
6
7
8
numbers = [1, 2, 3, 4]
alphabets = ["A", "B", "C", "D"]
grades = [[62, 75, 77], [78, 81, 86], [85, 91, 89]]

print(numbers) # [1, 2, 3, 4]
print(alphabets) # ['A', 'B', 'C', 'D']
print(grades[0]) # [62, 75, 77]
print(grades[2][1]) # 91

인덱싱

인덱스를 사용하면 리스트에서 몇번째 자리에 어떤 값이 있는지 알 수 있다.

  • 인덱스는 0부터 시작한다.
  • 없는 인덱스를 찾으면 오류가 발생한다.
  • 음수의 인덱스도 가능하다. (ex.-1일 경우 제일 마지막 원소)
  • numbers[a:b]: 인덱스 a부터 인덱스 b-1까지의 원소를 불러온다.
  • numbers[a:]: 인덱스 a부터 마지막 인덱스까지의 원소를 불러온다.
  • numbers[:b]: 첫번째 인덱스[0]부터 인덱스 b-1까지의 원소를 불러온다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
numbers = [1, 2, 3, 4]

print(numbers[1]) # 2
print(numbers[-1]) # 4
print(numbers[10]) # list index out of range

print(numbers[0] + numbers[1]) # 3
print(numbers[0:2]) # [1, 2]
print(numbers[2:]) # [3, 4]
print(numbers[:2]) # [1, 2]

numbers[0] = 5
print(numbers) # [7, 2, 3, 4]

numbers[0] = numbers[2] + numbers[3]
print(numbers) # [7, 2, 3, 4]

리스트 함수

len 함수

리스트 안의 원소 개수를 알려준다.

1
2
alphabet = ["a", "b", "c", "d"]
print("리스트 길이: %d" % len(alphabet)) # 리스트 길이: 4

원소 추가하기

insertappend를 사용하여 리스트에 원소를 추가한다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
numbers = []

# 마지막 위치에 5 추가
numbers.append(5)
print(numbers) # [5]

# 마지막 위치에 8 추가
numbers.append(8)
print(numbers) # [5, 8]

# 마지막 위치에 10 추가
numbers.append(10)
print(numbers) # [5, 8, 10]

# 인덱스 0 자리에 0 추가
numbers.insert(0, 0)
print(numbers) # [0, 5, 8, 10]

# 인덱스 3 자리에 12 추가
numbers.insert(3, 12)
print(numbers) #[0, 5, 8, 12, 10]

원소 삭제하기

del 함수를 사용하여 원하는 리스트의 원소를 삭제할 수 있다.

1
2
3
4
5
6
7
8
9
numbers = [1, 2, 3, 4, 5]

# 인덱스 3에 있는 값 삭제
del numbers[3]
print(numbers) # [1, 2, 3, 5]

# 인덱스 2부터 마지막 값까지 삭제
del numbers[2:]
print(numbers) # [1, 2]

리스트 연결하기

+로 리스트들을 연결할 수 있다.

1
2
3
4
5
num1 = [1, 2]
num2 = [3, 4]
num = num1 + num2

print(num) #[1, 2, 3, 4]

리스트에서 값의 존재 확인하기

in이라는 키워드로 리스트에 값의 존재를 확인할 수 있다.

1
2
3
4
5
6
num = [1, 2, 3, 4]
print(3 in num) # True
print(8 in num) # False

print(5 not in num) # True
print(2 not in num) # False

sorted 함수

sorted 함수는 리스트의 원소들을 오름차순으로 정렬한 새로운 리스트를 리턴 해준다.

1
2
3
4
numbers = [6, 2, 4, 5, 1, 3]
numbers = sorted(numbers)

print(numbers) # [1, 2, 3, 4, 5]

sort 메소드

some_list.sort()는 새로운 리스트를 생성하지 않고 정렬된 상태로 바꿔주기만 한다. (새로운 리스트를 리턴하지 않는다.)

reverse 메소드

some_list.reverse()는 리스트에서 원소들을 뒤집어진 순서로 배치한다.

index 메소드

some_list.index(x)는 리스트에서 x의 값을 갖고 있는 원소의 인덱스를 리턴한다.

remove 메소드

some_list.remove(x)는 리스트에서 첫 번째로 x의 값을 갖고 있는 원소를 삭제한다.


REFERENCE
코드잇 온라인 강의 프로그래밍 기초

  • © 2020-2025 404 Not Found
  • Powered by Hexo Theme Ayer