Python 컨테이너형 변수
대괄호 [ ] 사용
여러 값을 순서대로 담을 수 있음
예시)
my_list = [1,2,3,4,5]
리스트의 인덱싱 (indexing)
firstNum = my_list[0]
secNum = my_list[1]
lastNum = my_list[-1]
특정 위치의 값 변경하기
중첩된 리스트에서 인덱싱
예시)
nested_list = [[1,2,3],[4,5,6]]
print(nested_list[0][2])
# -> 3 출력
리스트의 메서드 (method)
기타 활용
슬라이싱
기본 구조
my_list[시작:단위: 끝]
예시)
my_list = [1,2,3,4,5,6,7,8,9,10]
print(my_list[2:5]) # 3번째 숫자부터 ~ 끝 인덱스 숫자 미만까지 나옴.
# 3,4,5 가 나옴
print(my_list[-3:] # 뒤에서 세번째부터 끝까지
# 8,9,10 이 나옴
print(my_list[:-1]) # 맨 처음부터 끝에서 하나 전까지
# 1,2,3,4,5,6,7,8,9 이 나옴
my_list[:] # -> 전체 다
reversed_list = my_list[::-1] # 리스트 거꾸로 뒤집기
실제 사용 예시
from sklearn.datasets import load_iris
# Iris 데이터셋
iris = load_iris()
# 데이터셋을 train 데이터와 test 데이터로 나눌 때,
train_data = iris.data[:100] # 인덱스 0부터 99까지의 데이터 추출
print("학습 데이터:", train_data)
test_data = iris.data[100:] # 인덱스 100부터 끝까지의 데이터 추출
print("학습 데이터:", test_data)
여러 개의 요소를 저장하는 컨테이너임.
리스트와 유사
변경할 수 없는 시퀀스 자료형
→ 데이터를 보호하고 싶을 때 사용함
소괄호를 사용함
예시)
my_tuple = (1,2,3,a,b)
튜플의 메서드
my_dict = {
'key1' : 'value1',
'key2' : 'value2',
'key3' : 'value3',
'key4' : 'value4'
}2주차 완_ 👵
for문
기본 구조
for 변수 in 반복할 데이터:
코드 블록
range() 와 함께 활용
예시)
# 기본 구조 예시
fruits = ['사과', '바나나', '라임']
for fruit in fruits:
print(fruit)
# range() 함수와 함께 사용
for i in range(6):
print(i)
# 딕셔너리에 이용
person = {"name": "John", "age": 30, "city": "New York"}
for key, value in person.items():
print(key, value)
이중 for 문
기본 구조
for i in iterableX:
for j in iterableY:
코드블럭
예시)
# 구구단 출력
for i in range(2,10):
for j in range(1,10):
print(i, "x", j, "=", i*j)
# -> 출력 값 ->
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6
2 x 4 = 8
2 x 5 = 10
2 x 6 = 12
2 x 7 = 14
2 x 8 = 16
2 x 9 = 18
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
.
.
.
9 x 1 = 9
9 x 2 = 18
9 x 3 = 27
9 x 4 = 36
9 x 5 = 45
9 x 6 = 54
9 x 7 = 63
9 x 8 = 72
9 x 9 = 81
while 문
조건을 만족하는 동안 코드 블록을 반복적으로 실행하는 반복문
기본 구조
while 조건:
코드_블록
예시)
i가 5일 때까지 (True 일 때까지) 코드블록을 반복함.
*무한 반복 주의 !
i=1
while i <= 5:
print(i)
i += 1
무한 루프와 break 문
break : 반복문의 동작을 중단
while True:
user_input = input("Type 'quit' to exit: ")
if user_input == 'quit':
break
print("You typed:", user_input)
pass : 아무 동작을 하지 않고 다음으로 넘어감
numbers = [1,2,3,4,5,6,7]
for num in numbers:
if num % 2 == 0:
pass
else:
print(num, "은 홀수입니다.")
continue : continue 이하 코드 실행 X, 다음으로 넘어감
num = 0
while num < 10: # 3. 다음 반복문을 실행
num += 1
if num % 2 == 1: # 1. 홀수면,
continue # 2. 건너뛰고
print(num)