복습 노트

파이썬 기초

에이블러 2025. 10. 16. 08:31

<Python 언어>

파이썬은 쉽고 직관적인 문법(사람 친화적), 강력한 라이브러리(이미 만들어진 코드 꾸러미) 지원

특징 1. 쉬운 문법과 가독성

        2. 플랫폼 독립성(운영체제 상관X)

        3. 인터프리터 언어: 코드를 한 줄 씩 독립적으로 실행

파이썬의 장단점 : 실행 속도가 느리지만, 배우기 쉽다.

 

주석(#): 코드 실행에 영향을 미치지 않는 설명 (가독성↑, 유지보수↑)

Ipynb : 인터넷 파이썬 노트북

Markdown cell : 코드가 없는 셀

셀 실행 = shift + enter

Input() 을 사용하면 입력한 값은 무조건 문자열로 저장

형변환  1.정수형(integer) : int()

2.실수형(float) : float()

3.문자열(string) : str()

f-string : 변수와 문자열을 왔다 갔다 하면 복잡하니까 사용. 쉼표 띄어쓰기도 고려해야 하고

 

여러 줄 주석 : “””~~~“”” or ‘’’~~~’’’

“~”자체를 출력하려면 작은 따옴표or큰 따옴표로 감싸기

 

print 함수

1.     sep 옵션을 사용하여 구분자 설정 가능 (기본값은 띄어쓰기)

2.     end 옵션을 사용하면 출력 후 기본적으로 줄바꿈(\n)이 발생하는 것을 변경 가능

3.     프린트 특수 문자 \이용 3가지( \n  \t  \\ )

 

Input() 무조건 문자열로 인식. 따라서 숫자들은 변환 필요함

 

<변수와 기본 자료형>

변수(variable) : 이름이 붙은 데이터를 저장하는 공간. 동적 타이핑(마지막 변수 지정을 따름)

Python에서는 변수 선언 시 자료형을 따로 지정할 필요가 없음.

Type() : 자료 형태를 확인하는 함수

변수명 작성 규칙

-      영문자, 숫자 언더스코어(_)만 사용 가능

-      변수명의 첫 글자는 숫자가 될 수 없다.

-      대소문자가 다르면 다른 변수, 띄어쓰기 불가능

_변수명 = "무시하는 값"  #값을 무시할 때 사용

 

변수명 스타일 가이드

-      여러 단어로 이루어진 변수명은 소문자+언더스코어 활용

-      변수명은 의미를 확실히 알 수 있게

-      한 글자 변수명은 피하기

-      상수(변하지 않는 값)는 변수명을 대문자로만 작성

    

연산자

-      기본 연산: 사칙연산( + - * / ), ( // ), 나머지( % ), 거듭제곱( ** )

n  나누기를 하면 결과는 무조건 실수

-      논리 연산자: and(둘 다 트루), or(한쪽이라도 트루), not(논리를 반대로 바꿈)

n  A=True, B=False 는 자동적으로 논리 자료형 (따옴표X, 앞글자 대문자)

-      관계 연산자: >  <  <=  >=  ==(같다)  !=(같지않다)

 

Python의 기본 자료형

-      숫자형(Numeric Type): 정수형, 실수형

n  정수형과 실수형을 계산하면 무조건 실수형이 된다(영원히)

n  정수를 정수로 나누면 무조건 실수(나누기는 무조건 실수가 되니까)

-      문자열(String): 무조건 따옴표를 사용해야 함, 시퀀스 자료형

n  작은 거 큰 거 상관X, 문자 안에 쓸 때는 눈치껏 다르게

n  문자열 연산은 더하기(+)와 곱하기(*)만 가능

u  + : 문자열 연결 ,            * : 문자열 반복

 

-      리스트(List): 여러 개의 값을 하나의 변수에 저장할 수 있는 자료형

n  [ ] 대괄호를 사용하여 리스트를 생성, 순서 존재

u  구간 슬라이싱(이상:미만:단계) , 인덱싱[숫자]

                                  둘 다 생략 가능

n  숫자형/문자열 혼합 가능, 시퀀스 자료형(맨 앞부터 0 1 2~ 또는 맨 뒤부터 -1 -2 -3~)

n  문자열처럼 연결과 반복 연산 사용 가능

n  리스트 인덱싱과 슬라이싱

u  리스트명[N] : 해당 리스트의 N-1번째 요소

u  리스트명[-1] : 해당 리스트의 가장 마지막 요소

u  리스트명[N:M:간격] : 해당 리스트의 N번부터 M-1번 값을 분리

l  N 또는 M 생략시 맨 처음부터or맨 끝까지

n  리스트 원소를 변경할 수 있다.

u  주요 메서드(특정 자료형에서만 작동 ex.리스트)   # .을 추가하고 써야함

l  append : 리스트의 끝에 원소 추가

l  pop : 리스트의 마지막 원소 제거하여 할당

l  split : 구분자 기준 문자열을 분리하여 리스트로 할당

 

-      튜플(Tuple): 여러 개의 값을 하나의 변수에 저장할 수 있는 자료형

n  리스트와 다르게 값 변경이 불가능 (메모리 사용량에 이점)

n  순서가 있으며 중복된 값을 가질 수 있음

n  괄호가 없어도 튜플로 인식됨, 원소가 하나일 때는 뒤에 쉼표(,)를 반드시 붙일 것.

n  ()를 사용하거나 tuple([ ]) 함수를 이용, 괄호 없이 ,만 해도 됨

 

-      딕셔너리(Dictionary): (key)와 값(value)의 쌍으로 이루어진 자료형

n  순서 없이 키를 사용하여 값을 저장하고 조회 가능

n  중복된 키 설정 불가, 변경(수정, 추가, 삭제) 가능

n  { : }(중괄호) 또는 dict( ) 함수를 사용하여 생성 가능

u  keys() : 모든 키 가져오기

u  values() : 모든 값 가져오기

u  items() : 모든 키-값 쌍 가져오기

u  pop(key) : 해당 키 값 제거 후 반환

u  get(key) : 해당 키의 값 반환

u  pop(key) : 해당 키 값을 제거하고 반환

n  get() 메서드를 사용하면 키가 존재하지 않을 때 오류를 방지 가능

n  수정 가능, 삭제도 가능( del 이름[ ] )

 

-      집합(Set): 중복을 허용하지 않는 자료형

n  순서가 없으며 중복된 값 자동 제거(인덱스, 슬라이싱 불가능)

n  집합연산(합집합, 교집합, 차집합) 가능

u  합집합( | )   ex. A | B

u  교집합( & )   ex. A & B

u  차집합( - )   ex. A - B

n  { }(중괄호) 또는 set([ ]) 함수를 사용하여 생성

 

 

<조건문 (If)>

조건문: 상황에 따라, 특정 조건에 따라 다른 동작을 하도록 하는 것. 대답이 참과 거짓으로 구분할 수 있는 것.

-      If 조건:

elif 조건2:

else: (생략가능)

-      If elif 조건에 합당하면 밑에 남은 elif else는 실행되지 않음.

 

<반복문>

-      while: 반복 횟수가 정해지지 않은 경우. 조건이 참인 경우 계속 반복

n  while 조건식:

n  무한루프를 종료하기 위해서는 ctrl + c 또는 break문을 사용

u  break문은 위치 상관없이 모든 반복문을 즉시 빠져나옴

n  while문은 조건식에서 비교해야 하므로 while문 전에 변수를 미리 정의해줘야 함.

-      for: 반복 횟수가 정해져 있거나 범위가 정해진 경우 → 보통 시퀀스 자료형과 사용

n  for 변수 in 시퀀스자료:

n  변수 미리 정의할 필요 없음

range(N:M) : 범위 설정. N부터 M-1까지

 

 

<함수와 클래스>

함수: 특정 작업을 수행하는 코드 블록, 필요할 때마다 호출하여 실행할 수 있는 독립적 단위.

-      내장 함수

1.     숫자 연산 함수 : 절대값 abs(), 최대값 max(), 최소값 min(), 반올림 round(), 총합 sum()

2.     데이터 변환 함수 : 정수 int(), 실수 float(), 문자열 str(), 리스트 list(), 튜플 tuple()

3.     입출력 함수 : 출력 print(), 입력 input()

4.     자료 정보 함수 : 길이 len(), 자료형 type(), 메모리주소값 id()

5.     논리 및 조건 함수 : /거짓 bool(), 모든 요소가 참 all(), 하나라도 참 any()

6.     정렬 및 순회 함수 : 정렬 sorted(), 순회 enumerate(), 여러 iterable 객체 동시 순회 zip()

7.     정렬 및 순회 함수 : 정렬 sorted(), 순회 enumerate(), 여러 iterable 객체 동시 순회 zip()

-      사용자 지정 함수(def 함수)

n  def 함수이름(매개변수1, 매개변수2, ... , 매개변수N):

          실행 할 코드

            return 반환값

 

클래스(Class): 파이썬에서 클래스는 객체(object)를 만들기 위한(객체화) 틀 설계도

, 클래스는 객체를 만들기 위한 설계도이며, 클래스를 사용하면 비슷한 특징을 가진 객체를 쉽게 만들고 관리할 수 있다.

-      class 클래스이름:                                               #init은 재료 준비와 같다

def__init__(self, 매개변수1, 매개변수2)        #self는 함수가 이 class꺼라는 의미

           self.변수1=매개변수1

           self.변수2=매개변수2

def 메서드이름(self)                               # class에서만 쓸 수있으므로 메서드

n  def__~~는 클래스를 선언해야만 사용 가능하므로(self.) 모두 메서드이다.

 

익명함수 (Lambda)

이름이 없는 간단한 함수를 만들 때 사용하는 기능.

-      주로 단순한 연산 수행 함수 만들 때 사용

-      def 키워드와 달리 한 줄로 간단하게 함수를 만드는 것이 가능

-      lambda 매개변수1, 매개변수2, --- : 표현식

 

파일처리

-      open()함수를 사용하여 파일을 읽고 쓸 수 있음

-      반복문을 활용하면 여러 줄을 처리할 때 저 효율적

-      데이터 분석에서는 CSV와 같은 형식의 파일을 다루는 것이 중요함

-      파일을 활용하려면 데이터를 저장, 로드, 분석하는 다양한 작업을 수행할 수 있음

'복습 노트' 카테고리의 다른 글

딥러닝  (0) 2025.11.05
머신러닝  (0) 2025.10.25
데이터 분석 2  (0) 2025.10.19
데이터 분석 1  (0) 2025.10.18
DX의 이해  (0) 2025.10.14