| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |
- 로그
- 파이썬
- 파이썬시각화
- 데이터분석가부트캠프
- 태블로
- 프로덕트분석
- 탐색적데이터분석
- amplitude
- Tableau
- 지표설계
- 파이썬라이브러리
- 데이터분석가
- 프로덕트데이터
- 퍼널분석
- 결측값
- aarrr
- 로그설계
- 데이터전처리
- 코드잇
- seaborn
- 부트캠프
- 데이터분석프로젝트
- retention
- 데이터분석
- 코드잇스프린트
- 스프린트미션
- 데이터분석공부
- SQL
- 데이터분석가공부
- 지표
- Today
- Total
StuDyata.zip
데이터 분석을 위한 Python 기본기 | 파이썬 기초 내용 전체 정리(자료형, 함수, 리스트, 제어문) 본문
데이터 분석을 위한 Python 기본기 | 파이썬 기초 내용 전체 정리(자료형, 함수, 리스트, 제어문)
자유를원해 2026. 3. 13. 21:51이 글은 코드잇 스프린트 데이터 분석가 과정 학습 기록입니다.
수업 내용과 느낀 점을 매일 정리하며 데이터 분석 공부 과정을 기록하고 있습니다.
🧑💻데이터 분석을 위한 Python 기본기 총정리
저번까지는 엑셀로 하는 데이터 분석을 학습했다면, 이번에는 파이썬 이론을 배우기 시작했다. 수업 주제는 데이터 분석을 위한 파이썬 기본기 수업이었고 이번 이론 실습 수업은 하루 만에 끝이 났다. 기초 파트라서 하루 만에 스파르타식으로 했던 것 같다. 파이썬을 따로 설치해야 하나 싶었는데, 이번 실습은 별도 설치 없이 구글 코랩(Google Colab) 을 활용해 진행되었다. 예전에 대학생 때 팀플을 하면서 코랩을 몇 번 사용했던 기억이 있었는데, 오랜만에 다시 보니 반갑기도 했다.
실습 파일도 코랩 링크로 전달받았는데, 단순히 코드만 있는 형식이 아니라 자료가 거의 PPT처럼 정리되어 있어서 보기 편했다. 강사님께서는 파이썬 기초라고 해도 내용이 정말 많다고 하셨고, 다음 주에는 더 중요한 내용인 라이브러리 활용과 파이썬 EDA 등을 배우게 된다고 설명해주셨다. 그래서 이번 시간이 단순한 입문 수준이라기보다는, 이후 내용을 이해하기 위한 기본기를 빠르게 다지는 시간처럼 느껴졌다.
✍️구글 코랩과 마크다운
본격적인 파이썬 문법에 들어가기 전에 먼저 구글 코랩에서 자주 쓰는 기능부터 설명해주셨다. 코랩에서는 크게 코드 셀과 텍스트 셀을 추가할 수 있는데, 텍스트 셀에서는 설명을 적거나 분석 흐름을 정리할 때 마크다운(Markdown) 형식을 사용한다.
마크다운을 사용하는 이유는 크게 세 가지이다.
첫째, 코드를 설명하고 분석 흐름을 글로 전달하기 위해서이다.
둘째, 섹션을 나누고 단계별로 내용을 구분하기 위해서이다.
셋째, 분석의 목적, 가설, 결과 해석 등을 설명하기 위해서이다.
학습 자료 안에 있던 목차도 마크다운으로 만든 것이라고 하셨는데, 생각해보니 코랩에서 셀 제목을 잘 잡아두면 나중에 목차가 자동으로 정리되기 때문에 미션이나 프로젝트를 할 때도 유용할 것 같다.
마크다운의 기본 문법이다.
- 제목은 앞에 # 을 붙여 사용한다.
# 이 하나면 가장 큰 제목이고, 두 개, 세 개가 될수록 더 작은 제목이 된다. - 굵게 표시는 **텍스트**
- 기울임 표시는 *텍스트*
코랩에서는 화살표로 셀을 이동할 수 있고, 휴지통 아이콘을 누르면 셀을 삭제할 수 있다. 또 링크, 이미지, 리스트, 불릿포인트, 그리고 텍스트 안에서 코드 형식을 지정하는 것도 가능하다. 또 데이터를 불러올 때는 코랩 화면 왼쪽의 파일 모양 아이콘을 눌러 사용할 수 있다.
📁파이썬 기초를 시작하기 전에
파이썬에 대한 아주 간단한 요약 설명으로 시작한다.
- 문자열은 문자 데이터를 의미한다.
- 불린형은 True, False를 의미한다.
- 리스트는 []
- 딕셔너리는 {}
- 튜플은 ()
- type() 은 자료형을 확인할 수 있다.
- type cast() 는 자료형을 바꿀 수 있다.
📄파이썬이란 무엇인가, 그리고 주석(Comment)
코드(code) 란 인간이 컴퓨터와 소통하기 위해 사용하는 언어이고, 코딩(coding) 은 그 언어를 작성하는 행위이다.
그리고 코멘트(comment), 즉 주석은 코드에 대해 설명을 달기 위해 사용한다. 장황한 설명이 필요할 때는 아예 텍스트 셀을 추가하는 편이 낫지만, 간단한 설명은 주석으로 충분하다.
주석은 # 뒤에 오는 내용으로 작성하며, 실행할 때는 없는 줄처럼 취급된다. 즉 다른 코드와 함께 실행해도 프로그램 동작에는 영향을 주지 않는다. 여러 줄을 한 번에 주석처럼 처리하거나 설명을 적고 싶을 때는 """ """ 또는 ''' ''' 처럼 따옴표 세 개를 사용할 수도 있다.
🔡자료형(Data Type): 숫자, 문자열, 불린
자료형이란 데이터 타입을 의미한다.
1. 숫자형
숫자형은 연산이 가능한 데이터이고, 크게 정수(Integer)와 실수(Floating Point)로 나뉜다.
- 정수는 소수점이 없는 수
- 실수는 소수점을 포함하는 수
나중에 type() 으로 자료형을 확인하면 각각 int, float 형태로 출력된다. 기본적인 사칙연산은 다음과 같다.
- + : 덧셈
- - : 뺄셈
- * : 곱셈
- / : 나눗셈
추가로 나눗셈에서는 몫과 나머지를 구하는 연산자도 있다.
- // : 몫 반환
- % : 나머지 반환

거듭제곱은 ** 을 사용한다. 예를 들어 2의 3승은 2**3 이다.
반올림은 round() 함수를 사용한다. 형식은 round(숫자, 소수점 자리수) 이다.
값을 계산할 때는 꼭 print() 를 써야 하는 것은 아니지만, 여러 개를 한 셀에서 계산할 때 print() 를 사용하지 않으면 마지막 계산 결과만 출력된다. 그래서 여러 결과를 모두 보고 싶을 때는 print() 를 사용한다.
2. 문자열(String)
문자열은 큰따옴표 " 또는 작은따옴표 ' 안에 넣어 사용한다. 따라서 따옴표 안에 숫자가 들어 있어도 그것은 문자열이다.
문자열은 + 를 이용하여 연결할 수 있다. 예를 들어 print("2" + "5") 의 결과는 숫자 7이 아니라 문자열 "25" 가 된다. 말 그대로 이어 붙인 것이기 때문이다.
문자열은 곱셈도 가능하다. 예를 들어 "Hello" * 3 을 하면 HelloHelloHello 가 출력된다.

단, 문자열 연산은 문자열끼리 다룰 때 가능한 것이다.
3. 문자열 포매팅
- f-string
문자열 앞에 f 를 붙이고, 바뀌는 값을 넣을 자리에 {} 를 사용한다.
f-string 사용 예시 - format 메소드
문자열 뒤에 .format() 을 붙이고, 마찬가지로 바뀌는 자리에 {} 를 사용한다.

4. 불린(Boolean)
불린형은 참(True) 과 거짓(False) 을 나타내는 자료형이다. 예를 들어 3 > 7 은 거짓이므로 결과는 False 이다.
아까 위와 마찬가지로 True, False 에 따옴표가 감싸져 있으면 그것은 불린형이 아니라 문자열이다.
비교 연산자는 다음과 같다.
- >= : 이상
- <= : 이하
- == : 같다
- != : 같지 않다
여기서 같다는 = 하나가 아니라 == 두 개라는 점을 주의해야 한다.
불린값의 논리 연산이다.
- and : 둘 다 True일 때만 True
- or : 하나라도 True면 True
- not : 반대값
또 파이썬에서 = 은 수학에서의 같다가 아니라 지정 연산자(assignment operator) 이다. 즉, 왼쪽 = 오른쪽 은 오른쪽 값을 왼쪽 변수에 넘겨준다는 의미이다.
📩type()과 형변환(Type Cast)
type() 을 사용하면 해당 값이 어떤 자료형인지 출력된다. 예를 들어 <class 'int'>, <class 'float'> 같은 식으로 결과가 나온다.
추가로
- <class 'function'> 은 함수
- <class 'builtin_function_or_method'> 는 내장 함수
를 의미한다.
형변환(Type Cast)은 자료형을 바꾸는 것이다.
- int() : 정수형으로 변환
- float() : 실수형으로 변환
- str() : 문자열로 변환
다만 바꾸고 싶다고 해서 무엇이든 바뀌는 것은 아니다. 예를 들어 "hello" 는 숫자로 변환할 수 없다. 즉, 형변환도 논리적으로 가능한 경우에만 이루어진다.

엑셀에서도 의도대로 작동하지 않을 때 데이터 타입을 확인하듯이, 파이썬에서도 뭔가 이상할 때는 자료형을 먼저 확인하는 습관이 중요하다.
📚리스트(List), 딕셔너리(Dictionary), 튜플(Tuple)
리스트(List)
리스트는 [] 를 사용하며, 여러 개의 값을 저장할 때 사용하는 자료형이다. 리스트는 mutable, 즉 안에 있는 값을 바꿀 수 있다.
리스트 안에서 각 요소의 순서를 인덱스(index) 라고 한다. 파이썬의 인덱스는 0부터 시작한다. 즉, 두 번째 값처럼 보이는 것도 실제 인덱스는 1이고, 인덱스 2를 출력하면 순서상 세 번째 값이 나온다. 이 인덱스를 이용해 특정 위치의 값을 바꿀 수도 있다.
딕셔너리(Dictionary)
딕셔너리는 {} 를 사용하며, 키(key)와 값(value) 이 쌍으로 저장되는 자료형이다. 사전처럼 키를 넣으면 그에 해당하는 값을 찾는 구조라고 이해하면 된다. 딕셔너리에서 특정 키를 선택하면 그 키에 대응하는 값이 출력된다.
튜플(Tuple)
튜플은 () 를 사용하며, 리스트와 다르게 immutable, 즉 안에 있는 값을 바꿀 수 없다. 따라서 튜플을 만든 뒤 특정 인덱스의 값을 바꾸려고 하면 에러가 발생한다.

딕셔너리와 튜플은 뒤에서 다시 자세하게 설명한다.
🧮추상화와 함수 정의, return?
추상화
추상화란 복잡한 내용은 숨기고 주요 기능에만 집중하는 것이다. 코드를 작성할 때 모든 내부 과정을 매번 다 보지 않고, 필요한 기능만 깔끔하게 쓰기 위해 필요한 개념이다.
함수 정의
함수를 직접 정의할 때는 def 를 사용한다. define 의 앞부분을 따온 것이다. def 뒤에는 함수 이름을 쓰고, : 를 붙인 다음 바로 아래 줄부터 들여쓰기하여 함수가 실행될 때 수행할 코드를 작성한다.
이때 파라미터(변수)를 넣어 함수를 만들 수도 있다.
함수를 정의한 셀은 반드시 먼저 실행한 뒤에 다른 셀에서 사용할 수 있다.

return
return 은 값을 반환하는 기능도 있지만, 동시에 함수를 즉시 종료시키는 역할도 한다. 그래서 return 뒤에 코드가 더 있다면 그 부분은 dead code, 즉 의미 없는 코드가 된다. 함수 마지막에 return 을 쓰지 않으면 자동으로 생략되며, 이 경우 함수 바깥에서 print() 로 출력하면 함수가 실행된 뒤 None 이 출력될 수 있다.

이 부분은 설명을 들을 때 확실히 좀 어려웠다. 원래도 함수가 제일 헷갈리는 편인데 이번에도 역시 가장 집중해서 들어야 했던 파트였다. 그래도 이후 라이브러리를 제대로 쓰려면 함수 개념이 중요하다는 건 분명히 느껴졌다.
🧩파라미터와 옵셔널 파라미터
파라미터란 함수에 전달받을 값을 미리 받아놓는 변수이다. 파라미터는 아예 없을 수도 있고, 한 개일 수도 있고, 두 개 이상 여러 개일 수도 있다.
옵셔널 파라미터
옵셔널 파라미터는 파라미터에 기본값을 지정하는 것이다. 함수를 선언할 때 변수 자리에 = 을 사용해 기본값을 넣어두면 된다.
이렇게 하면 함수를 호출할 때 해당 값을 입력하지 않아도 기본값이 사용된다. 다만 옵셔널 파라미터는 반드시 마지막에 와야 한다는 점이 중요하다.

💡Syntactic Sugar와 내장함수
Syntactic Sugar
Syntactic Sugar란 같은 동작을 더 읽기 쉽고 간단하게 작성할 수 있도록 하는 문법적 편의 기능이다.
예를 들어 x = x + 1 은 x += 1 로 쓸 수 있다. 마찬가지로 x = x * 2 는 x *= 2 로 줄여 쓸 수 있다.
즉, 문법적으로 더 달콤하게, 더 간단하게 쓸 수 있게 해주는 표현이라고 이해하면 된다.
내장함수
함수는 명령을 저장한 것이고, 내장함수(built-in function) 는 파이썬에서 기본적으로 제공하는 함수들이다. 별도로 import 하지 않아도 바로 사용할 수 있다.
예를 들어
- print() : 출력
- len() : 길이 출력
- type() : 자료형 출력
- int() : 정수 변환
- sum() : 합 출력
등이 있다.
🔧변수와 지정 연산자
변수는 데이터를 어떤 공간에 담고 이름표를 붙여 값을 저장하는 것이다.
변수를 사용하는 이유는 값이 바뀌었을 때 관리가 쉬워지기 때문이다.
지정 연산자는 다시 말해 수학에서의 = 와는 다르다. 파이썬에서 = 은 오른쪽 값을 왼쪽 변수에 넘겨주는 역할을 한다.
즉, x = 5 는 x가 5와 같다는 뜻이라기보다, x라는 변수에 5를 저장했다는 의미로 이해해야 한다.
🔭변수의 Scope: 글로벌 변수와 로컬 변수
scope 는 범위, 즉 변수가 사용 가능한 범위를 의미한다.
- 글로벌 변수(global variable) : 함수 밖에서 정의한 변수로, 전체에서 사용할 수 있다.
- 로컬 변수(local variable) : 함수 안에서 정의한 변수로, 해당 함수 안에서만 사용할 수 있다.

함수 안에서 변수를 찾을 때는 로컬 변수부터 먼저 찾고, 그다음에 글로벌 변수를 찾는다. 이 개념은 함수를 사용할 때 헷갈리기 쉬운데, 변수가 어디에서 선언되었는지에 따라 사용할 수 있는 범위가 달라진다는 점을 잘 이해해야 한다.
🔢상수(Constant)
상수는 변하지 않는 값을 의미한다.
파이썬에서는 모든 글자를 대문자로 쓰는 것을 상수의 관례로 사용한다. 소문자로 써도 실행은 되지만, 대문자로 작성하면 고정된 값이라는 것을 한눈에 파악하기 쉽다.
즉, 프로그램이 실행되는 입장에서는 차이가 없지만 코드를 읽는 사람이 보기 편하도록 규칙처럼 사용하는 것이다. 예를 들면 원주율 같은 값이 여기에 해당한다.
🔮좋은 코드 스타일이란 무엇인가
강사님께서는 이해하기 쉬운 코드 = 좋은 스타일을 가진 코드라고 하셨다. 즉, 코드는 단순히 실행되기만 하면 되는 것이 아니라, 읽기 쉬워야 좋은 코드라는 것이다.
가독성이 높은 코드를 작성하기 위한 기본 규칙들이다.
- 모든 변수와 함수 이름은 소문자로 쓰고, 여러 단어일 경우 _ 로 구분한다.
- 모든 상수 이름은 대문자로 쓰고, 여러 단어일 경우 _ 로 구분한다.
- 들여쓰기는 스페이스 4개 또는 탭 2개를 사용한다.
- 함수 정의 위아래로 빈 줄을 두 개씩 넣는다. 다만 파일의 첫 줄이 함수 정의라면 위쪽 빈 줄은 없어도 된다.
- 괄호 바로 안쪽에는 띄어쓰기를 하지 않는다.
- 함수를 정의하거나 호출할 때 함수 이름과 괄호 사이에 띄어쓰기를 하지 않는다.
- 쉼표 앞에는 띄어쓰기를 하지 않는다.
- 지정 연산자 앞뒤에는 띄어쓰기를 하나씩 넣는다.
- 기본적으로 연산자 앞뒤에도 띄어쓰기를 하나씩 넣는다. 다만 연산 우선순위를 강조하고 싶을 때는 붙여 쓰는 경우도 있다.
- 일반 코드와 같은 줄에 코멘트를 쓸 경우, 코멘트 앞에 최소 두 칸 이상 띄어쓴다.
물론 실무에서 항상 완벽하게 지키는 것은 아닐 수 있지만, 좋은 코드를 작성하기 위한 기본 규칙으로 알아두면 좋겠다고 느꼈다. 나도 어느 정도 파이썬을 알고 있다고 생각했는데, 지키지 않던 부분이나 처음 듣는 부분도 꽤 있었다.
🧬제어문: while, for, if, elif, break
while
while 문은 어떤 작업을 반복하기 위해 사용한다. 기본 구조는 다음과 같다.
while 조건:
수행할 코드
즉, 조건이 참인 동안 계속 반복된다.

for
for 문도 반복문이지만, while 문과 달리 조건 부분을 직접 쓰는 구조는 아니다. 정해진 범위나 순회 가능한 대상의 요소들을 하나씩 꺼내며 반복한다.

if
if 문은 조건이 참일 때와 거짓일 때 실행을 나누는 제어문이다.
if 조건:
수행할 코드
else:
수행할 코드

elif
조건이 여러 개일 때는 elif 를 사용한다.
if 조건:
수행할 코드
elif 조건:
수행할 코드
else:
수행할 코드

break
break 는 반복문을 중간에 종료하고 싶을 때 사용한다.

📜리스트(List) 정리: 인덱싱, 슬라이싱, 메소드
앞에서 리스트가 여러 개의 값을 저장하는 자료형이라고 배웠는데, 이후에는 리스트를 조금 더 자세히 다루었다.
리스트 안의 각 값을 요소(element) 라고 하고, 요소의 위치를 인덱스(index) 라고 한다. 그리고 인덱스를 이용해 값을 가져오는 것을 인덱싱(indexing), 리스트의 일부를 잘라내는 것을 슬라이싱(slicing) 이라고 한다.
인덱싱
파이썬의 인덱스는 0부터 시작한다.
예를 들어 리스트의 첫 번째 요소를 가져오려면 list[0] 을 사용한다.
- 첫 번째 요소 → list[0]
- 두 번째 요소 → list[1]
- 세 번째 요소 → list[2]
그리고 -1 로 인덱싱하면 리스트의 가장 마지막 요소가 출력된다.
슬라이싱
슬라이싱은 대괄호 안에 콜론 : 을 사용해 범위를 지정한다. 예를 들어 인덱스 0부터 인덱스 3까지 보고 싶다면 [0:4] 처럼 써야 한다.
여기서 중요한 점은 뒤에 적는 인덱스는 포함되지 않는다는 것이다.
또 [:3] 처럼 앞을 비워두면 처음부터를 의미하고, 뒤를 비워두면 끝까지를 의미한다.
값 변경
리스트는 mutable 자료형이기 때문에, 인덱싱으로 특정 위치를 지정한 뒤 값을 새로 할당하여 변경할 수 있다.

📐리스트 관련 연산과 메소드
리스트에는 여러 가지 유용한 연산과 메소드가 있다.
in / not in
리스트 안에 특정 값이 있는지 없는지를 True, False 로 확인할 때 사용한다.
중첩 리스트(nested list)
리스트 안에 또 다른 리스트가 들어 있는 형태를 nested list 라고 한다. 예를 들어 학생 여러 명의 과목 점수를 저장할 때 사용할 수 있다.

이 경우 리스트 안의 리스트 요소를 꺼낼 때는 list[0][0] 처럼 두 번 인덱싱할 수 있다.
append
리스트 끝에 요소 하나를 그대로 추가한다.
형식: 리스트.append(추가할 요소)

extend
다른 리스트의 요소들을 풀어서 추가한다.
형식: 리스트.extend(리스트)

len
리스트 길이를 반환한다.

del
리스트에서 특정 인덱스 또는 슬라이스를 이용해 요소를 삭제한다.
형식: del 리스트[...]

insert
지정한 위치에 새로운 요소를 삽입한다.
형식: 수업 메모에 리스트.insert(위치, 요소)

index
특정 요소가 위치한 인덱스를 반환한다.
형식: 리스트.index(요소)

remove
첫 번째로 등장한 특정 요소를 삭제한다.
형식: 리스트.remove(요소)

sorted
기존 리스트는 그대로 두고, 정렬된 새로운 리스트를 반환한다.
sort
기존 리스트 자체를 정렬하고, 별도의 반환값은 없다.
즉 리스트 자체가 바뀌기 때문에 출력할 때는 변수 상태를 확인하거나 다시 출력해야 한다.

reversed
기존 리스트는 건드리지 않고, 뒤집힌 순서의 반복자를 반환한다.
reverse
기존 리스트 자체의 순서를 거꾸로 뒤집고, 반환값은 없다.

추가로 리스트끼리는 + 를 사용해 합칠 수도 있다. 또 문자열에서 했던 것처럼 인덱싱, 슬라이싱, 길이 함수는 문자열에도 그대로 적용된다. 다만 문자열은 immutable 이라서 값을 바꿀 수 없다는 차이가 있다.
🔗range 함수
숫자를 하나하나 직접 쓰는 것은 비효율적이기 때문에 range() 함수를 사용한다. 이 함수는 코드가 더 간편하고 깔끔해질 뿐 아니라 메모리 효율성 측면에서도 장점이 있다.
숫자 하나를 넣는 경우
range(x) 는 0부터 x-1 까지를 의미한다. 예를 들어 range(11) 은 0부터 10까지를 의미한다.
숫자 두 개를 넣는 경우
range(x, y) 는 x 부터 y-1 까지를 의미한다. 예를 들어 range(1, 6) 은 1부터 5까지이다.
숫자 세 개를 넣는 경우
range(x, y, z) 는 z 를 간격으로 하여 x 부터 y-1 까지를 의미한다.

또 range() 를 list() 로 감싸면 리스트 형태로 변환할 수 있다.
📕딕셔너리(Dictionary) 정리
딕셔너리는 키(key)-값(value) 쌍으로 이루어진 요소를 가진다. type() 으로 확인하면 dict 로 출력된다.
강사님께서는 나중에 배우게 되겠지만, 데이터 분석에서는 딕셔너리보다 데이터프레임 형태로 데이터를 다루는 경우가 훨씬 많다고 하셨다. 딕셔너리 자체도 유용하지만, 대량 데이터를 다루기에는 비효율적이고 까다로울 수 있기 때문이다.
딕셔너리는 중괄호를 이용하여 만들 수 있다.

요소 추가
딕셔너리에 새로운 요소를 추가할 때는 딕셔너리[키] = 값 형태로 작성한다.

items, keys, values
- .items() : 키-값 쌍 출력
- .keys() : 키만 출력
- .values() : 값만 출력

🖱️input()으로 사용자 입력받기
input() 을 사용하면 실행 중 사용자에게 값을 입력받을 수 있다. 이렇게 입력받은 값은 이후 수식이나 다른 코드에서 활용할 수 있다.
다만 중요한 점은 input() 이 문자열을 반환한다는 것이다. 즉, 숫자를 입력받았더라도 그 결과는 문자열이므로, 실제 숫자로 사용하려면 int() 나 float() 등을 이용해 자료형을 바꿔주어야 한다.

🔒예외처리: try, except
예외처리는 에러가 발생했을 때 프로그램이 갑자기 중단되지 않도록 안전하게 유지하는 방법이다.
- try : 에러가 발생할 수 있는 코드를 작성
- except : 에러가 발생했을 때 실행할 코드를 작성
즉, try 는 일단 시도해보는 것이고, except 는 실패했을 때 이렇게 처리하겠다는 의미이다. 에러가 없으면 except 부분은 실행되지 않는다.
예를 들어 input() 에 숫자를 넣어야 하는데 문자를 입력한 경우, 프로그램이 그대로 에러로 종료되지 않도록
“숫자를 다시 입력하세요” 같은 메시지를 출력하고 다시 입력받게 하는 상황에 활용할 수 있다.

📖라이브러리와 파이썬 응용 맛보기
라이브러리를 본격적으로 자세히 배우는 날은 아니었지만, 다음 주부터 여러 라이브러리를 사용해 작업하게 된다고 하시며 간단한 응용 파트도 설명해주셨다.
라이브러리란 특정 분야의 기능을 모아둔 집합으로, 여러 개의 패키지와 모듈로 구성된다.
라이브러리 종류
- 표준 라이브러리
파이썬 설치 시 기본 제공되는 라이브러리
예: os, random - 서드파티 라이브러리
pip 으로 설치해서 사용하는 외부 라이브러리
예: pandas, numpy
라이브러리를 불러올 때는 import 를 사용한다.
예를 들어
- pandas as pd
- matplotlib.pyplot as plt
처럼 별칭을 붙여 자주 사용한다.
특히 중요하게 사용할 라이브러리로는
- pandas : 표 구조의 데이터프레임 가공 및 전처리
- numpy : 수치 연산
- matplotlib, seaborn, plotly : 데이터 시각화
- sklearn, scipy
등이 있다.
예전에 배웠고 직접 써본 적도 있는 것들이라 이름은 익숙했지만, 다시 정리해서 들으니 다음 주 수업이 확실히 하이라이트일 것 같다는 생각이 들었다.
🗃️표준 라이브러리: os, sys, random
os
os 모듈은 파이썬에서 운영체제와 상호작용할 수 있도록 도와주는 표준 라이브러리이다. 주로 파일이나 폴더(디렉토리) 관련 작업에 사용한다. 자주 쓰는 기능은 다음과 같다.
- os.getcwd() : 현재 작업 디렉토리 확인
- os.chdir() : 작업 디렉토리 변경
- os.mkdir() : 새 디렉토리 생성
- os.rmdir() : 디렉토리 삭제
sys
sys 는 파이썬 인터프리터와 관련된 변수와 함수를 제공하는 모듈이다. 자주 쓰이는 기능으로는
- sys.version : 파이썬 버전 확인
- pd.__version__ : pandas 버전 확인
같은 것들이 있다.
random
random 은 무작위 숫자를 생성하는 다양한 함수를 제공하는 표준 라이브러리이다. 대표적인 함수는 다음과 같다.
- random() : 0 이상 1 미만의 임의의 소수 반환
- randint(a, b) : a 이상 b 이하의 임의의 정수 반환
- uniform(a, b) : a 이상 b 이하의 임의의 소수 반환

🗒️문자열 다루기
strip
문자열 양 끝의 공백을 제거한다. 여기서 공백에는 스페이스뿐 아니라 탭, 엔터 등이 포함된다.

split
문자열을 구분자를 기준으로 나누어 리스트로 반환한다.

replace
문자열에서 특정 문자를 다른 문자로 바꾼 새 문자열을 반환한다.

join
구분자를 기준으로 여러 문자열을 하나의 문자열로 합친다.

upper, lower, capitalize
- upper() : 문자열 전체를 대문자로 변환
- lower() : 문자열 전체를 소문자로 변환
- capitalize() : 문자열의 첫 글자만 대문자로 변환

startswith, endswith
- startswith() : 특정 문자열로 시작하는지 확인
- endswith() : 특정 문자열로 끝나는지 확인

결과는 True, False 로 나온다.
+ 추가로 help() 안에 설명이 필요한 함수 이름을 넣으면 그 함수에 대한 설명이 출력된다고 하셨다. 이건 나도 처음 알았다. 앞으로 헷갈리는 함수가 있으면 바로 확인해볼 수 있어서 꽤 유용할 것 같다.
🙋실습 시간에 다룬 문제 유형
문제 난이도 자체가 엄청 어렵지는 않았지만, 기본 개념을 제대로 이해했는지 확인하는 데는 충분한 문제들이었다. 주로 나온 유형은 다음과 같았다.
- 출력값 예상하기
- 틀린 출력값 맞추기
- for문, while문 으로 특정 출력값 만들어내기
출력값 자체를 만들어내는 것은 가능했지만, 결국 중요한 것은 코드를 얼마나 효율적으로 작성하느냐 인 것 같았다. 파이썬을 너무 오랜만에 다뤄서 조금 어색하긴 했지만, 그래도 아주 기초적인 부분은 알고 시작한 상태라 아주 처음부터 막막하진 않았다. 또 강사님께서 코드를 하나도 빠짐없이 다 외우기보다는, “이 코드를 실행했을 때 왜 이런 결과가 나오는지 이해하는 것” 이 더 중요하다고 말씀해주셔서 조금 안심이 되었다.
💎마무리
파이썬 기초라는 이름이 붙어 있었지만, 실제로는 내용이 정말 많았다. 자료형부터 함수, 변수, 스코프, 스타일, 제어문, 리스트, 딕셔너리, 예외처리, 라이브러리까지 짧은 시간 안에 정말 많은 내용을 훑었다. 특히 다시 정리해보면 핵심은 다음과 같았다.
- 코랩에서는 코드 셀과 텍스트 셀을 구분하고, 마크다운을 활용해 설명과 흐름을 정리할 수 있다.
- 파이썬의 기본 자료형에는 숫자형, 문자열, 불린형, 리스트, 딕셔너리, 튜플 등이 있다.
- 함수는 def 로 정의하고, return 은 값 반환과 동시에 함수 종료 역할을 한다.
- 변수는 저장 공간이고, = 은 지정 연산자이다.
- 변수의 사용 범위는 scope에 따라 달라진다.
- 코드 스타일은 단순한 형식 문제가 아니라 가독성과 협업을 위한 기본 규칙이다.
- while, for, if, elif, break 같은 제어문은 반복과 조건 처리를 위해 꼭 필요하다.
- 리스트는 인덱싱, 슬라이싱, 메소드 활용이 매우 중요하다.
- 라이브러리는 앞으로 데이터 분석을 할 때 본격적으로 사용하게 될 중요한 도구이다.
파이썬을 완전히 처음 배우는 사람에게는 하루에 다루는 양이 꽤 많게 느껴질 수도 있겠다는 생각이 들었지만, 반대로 데이터 분석에서 실제로 자주 쓰는 내용들을 빠르게 큰 틀로 정리할 수 있었다는 점에서는 의미 있는 시간이었다.
'Codeit Sprint > 공부 기록' 카테고리의 다른 글
| SQL로 하는 데이터 분석 | SQL 기초부터 함수, JOIN, 서브쿼리, CTE까지 전체 정리 (1) | 2026.04.28 |
|---|---|
| Tableau로 대시보드 제작하기 | BI 개념부터 다양한 차트, 분석 기능, 대시보드 제작까지 전체 정리 (1) | 2026.03.30 |
| Python으로 하는 데이터 시각화 | 기술 통계부터 matplotlib, seaborn, plotly까지 전체 정리 (1) | 2026.03.30 |
| Python으로 데이터 다루기 | numpy, pandas, 전처리, 데이터 합치기, 집계 분석 내용 전체 정리 (0) | 2026.03.21 |
| Excel로 하는 데이터 분석 | 데이터 분석 실습 내용 전체 정리(참조, 함수, 피벗테이블, 차트, 전처리) (1) | 2026.03.12 |
