예습이기 때문에 한번씩 짚고 넘어가기

변수의 종류 : 숫자열

사칙연산

사칙연산!
더하기
+  값을 더함

빼기
- 값으 뺌

곱하기 
* 값을 곱함

나눗셈
/ 연산자를 사용하면 실수로 결과가 반환
// 연산자를 사용하면 정수로 결과가 반환
% 로 나머지 연산이 가능

 

숫자열 함수와 메소드

abs() 함수는 절댓값을 반환
round() 함수는 반올림한 값을 반환

 

정수형과 실수형의 차이

구분 정수형 (int) 실수형 (float)
의미 소수점이 없는 숫자 소수점을 포함한 숫자
자료형 int float
표현 가능 값 1, 100, -5 3.14, -0.5, 2.71828
소수점 사용 ❌ 불가능 ⭕ 가능
연산 결과 항상 정수 소수점 이하 포함 가능
사용 예 개수, 횟수, 나이 평균, 비율, 점수

 


변수의 종류3 : 불리언(Boolean)

주어진 조건이 참(True) 또는 거짓(False)을 나타내는 변수이다.

# Boolean 변수 선언
is_raining = True
is_sunny = False

# 비교 연산자를 사용하여 Boolean 값 비교
x = 10
y = 5

greater_than = x > y
print(greater_than)  # True 출력

리스트(List)란?

여러 개의 값을 한 묶음으로 관리하기 위한 자료형이다.

  • 순서가 존재
  • 값을 자유롭게 추가·삭제·변경 가능
  • 여러 데이터를 담을수 있음
  • 대괄호 [ ]를 사용하여 리스트 생성
# 1. 리스트 생성
my_list = [1, 2, 3, 4, 5]

# 2. 리스트의 기본 구조
print(my_list)  # 출력: [1, 2, 3, 4, 5]

 

• 대괄호 [ ]  - 여러 개의 값을 담는 자료형 이란 선언

• 쉼표 , - 각 값은 독립된 요소(element) 라는 의미

• 순서가 있다 - 1 → 2 → 3 → 4 → 5


리스트의 인덱싱

전에 배웠던것 기억하기....

인덱싱 = 번호

→ 리스트 안에서 “몇 번째 값인가”를 기준으로 접근하는 방법

my_list = [1, 2, 3, 4, 5]
my_list[0]

이 문장이 의미하는 건...

“리스트에서 0번째 위치에 있는 값을 가져와라”

→ my_list의 0번째에 있는 1 을 가져옴


 

리스트의 다양한 메소드

리스트 전용으로 준비된 다양한 기능들에 대해서 알아보자.

 

append / extend (값의 추가)

my_list.append(6)
my_list.extend([7, 8, 9])

• append - 리스트에 하나의 값(요소) 을 맨 뒤에 추가한다. (추가 객체는 1개)

• extend- 여러 개의 값을 풀어서 추가 → “리스트와 리스트를 이어 붙인다”란 개념으로 접근해도 좋다

 

insert (중간에 끼워 넣기)

my_list.insert(2, 10)

• 기존 순서를 유지하면서, 지정한 위치(index) 에 값을 삽입한다.

• 기존 값들은 오른쪽으로 한 칸씩 밀린다. 리스트의 전체 길이가 늘어난다.

 

remove vs pop (삭제의 관점 차이)

my_list.remove(3)
popped_value = my_list.pop(5)

• remove - 값을 기준으로 삭제 →  리스트에서 처음 등장한 값 하나만 제거

• pop - 위치를 기준으로 삭제

 

index / count (찾기)

my_list.index(4)
my_list.count(7)

• index - 특정 값이 처음 등장하는 위치를 알려준다. → “이 값이 처음 등장한 위치는 어디야?”
• count -  특정 값이 몇 번 등장하는지 세어준다. →  “이 값이 몇 번 등장했어?”

 

sort / reverse (순서 조작)

my_list.sort()
my_list.reverse()

• sort - 리스트의 요소를 오름차순으로 정렬
• reverse - 현재 순서를 그대로 뒤집는다

❗ 이 두 메서드는 새 리스트를 만드는 게 아니라 기존 리스트 자체를 바꾼다 ❗

 

del / clear(리스트 삭제)

del my_list[0]
my_list.clear()

• del -  인덱스를 기준으로 동작, 특정 위치 하나만 제거

구조는 유지하되 리스트의 길이가 줄어듬
• clear - 리스트는 남기고, 내용만 싹 비움


한줄요약

 

  • append / extend → 뒤에 추가 (하나 vs 여러 개)
  • insert → 중간 개입
  • remove / pop → 값 기준 vs 위치 기준
  • index / count → 위치 찾기 vs 개수 세기
  • sort / reverse → 원본 자체 변경
  • del / clear → 부분 삭제 vs 전체 비우기

 


리스트 값 변경

리스트는 값을 바꿀수도 있다.

my_list[3] = 'dragonfruit'

이게 가능하다는 건, 같은 리스트를 유지하면서 내용만 계속 업데이트 가능 하단 의미
⭐데이터 전처리에서 매우 중요하니 기억할것⭐


 

중첩 리스트

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

리스트 안에 또 하나의 리스트를 넣을수도 있다.

 

중첩 리스트는 이렇게 이해하자!
nested_list[1] - 두 번째 “리스트 묶음”
[0] - 그 안에서 첫 번째 값

합쳐서 보면...
nested_list[1][0] 두 번째 “리스트 묶음"에서 첫 번째 값

 


튜플이란?

여러 개의 값을 하나로 묶어 저장하는 자료형이다.
겉으로 보면 리스트와 거의 똑같아 보이지만, 가장 중요한 차이점....
❗ 튜플은 한 번 만들어지면 절대 바꿀 수 없다 (immutable)❗

 

프로그래밍을 함에 있어 “절대 바뀌면 안 되는 데이터”가 꽤 있는데

이런 데이트를 다룰때 튜플을 사용한다.

my_tuple = (1, 2, 3, 'hello', 'world')

 

• 소괄호 ( )  - 여러 개의 값을 담는 자료형 이란 선언

• 쉼표 , - 각 값은 독립된 요소(element) 라는 의미

• 순서가 있다 - 1 → 2 → 3 → 4 → 5

• 서로 다른 자료형도 함께 저장 가능

⭐ 생성 이후에는 구조도, 값도 바뀌지 않는다 ⭐

 


리스트 vs 튜플 (감각적으로)

구분 리스트 튜플
변경 가능 O
추가/삭제 가능 불가능
용도 작업 중 데이터 고정 데이터
성격 작업용 보관용
비유 메모장 인쇄된 문서

튜플 인덱싱 & 슬라이싱

my_tuple[0]
my_tuple[-1]
my_tuple[2:4]

• List와는 다르게 읽는것만 가능하며, 수정은 불가능!


 

튜플에서 자주 쓰는 메소드

count()

my_tuple.count(1)

- 특정 값이 몇 번 등장했는지

index()

my_tuple.index(3)

- 특정 값이 처음 등장한 위치 확인

 

⭐“튜플은 찾을 수는 있지만, 고칠 수는 없다” ⭐

 


튜플은 정말 아무것도 못 바꿀까?

직접 변경은 할순 없지만, 새로운 튜플을 만드는것은 가능하다.

 

 


 

튜플→리스트로 변경, 리스트→튜플로 변경

list(my_tuple)
tuple(my_list)

“고정 데이터 → 작업 데이터 → 다시 고정”

실제 흐름 예시

• SQL 결과 → 튜플 (변경 금지)
• 가공 필요 → 리스트로 변환

• 가공 완료 → 튜플로 다시 묶기

 

딕셔너리란?

값을 위치(index)가 아니라, 이름(key)으로 관리하는 자료구조다.

즉, 순서가 아닌 '의미'로 데이터를 찾는다!

my_dict = {
    'key1': 'value1',
    'key2': 'value2',
    'key3': 'value3'
}

딕셔너리의 기본

키(key)는 식별자다

•  키는 값의 이름표, 딕셔너리 안에서 유일해야 한다

 

값(value)은 뭐든 될 수 있다

•숫자

•문자열

•리스트

•튜플

•딕셔너리 조차 가능

 

순서가 목적이 아니다

딕셔너리는 “몇 번째냐”가 아닌 “무엇이냐”가 중요하다


값 수정 / 추가 / 삭제의 개념

grades['Bob'] = 95      # 수정
grades['David'] = 78   # 추가
del grades['Charlie']  # 삭제

이때

• 키가 있으면 → 수정

• 키가 없으면 → 추가


딕셔너리 에서 자주 쓰는 메소드

keys()

모든 키를 dict_keys 객체로 반환

my_dict.keys()

컬럼 목록 확인 느낌

 

values()

모든 값을 dict_values 객체로 반환

my_dict.values()

실제 데이터들만 모아서 보기

 

items()

모든 키-값 쌍을 (키, 값) 튜플로 구성된 dict_items 객체로 반환

my_dict.items()

(키, 값) 쌍으로 묶어서 제공

 

get()

지정된 키에 대한 값을 반환

만약, 키가 존재하지 않으면 기본값을 반환

my_dict.get('age')

 

 

pop() vs popitem()

my_dict.pop('city')
my_dict.popitem()

pop(): 지정된 키와 해당 값을 딕셔너리에서 제거하고 값을 반환

popitem(): 딕셔너리에서 마지막 키-값 쌍을 제거하고 반환


말 그대로 예습이기 때문에 정리가 미숙하고 어지러울순 있으나

본 학습에 들어갈때 더 높은 이해도를 위해 한번 짚고 넘어간다는 느낌으로 한것입니다.

 

 

 

 

+ Recent posts