패스트캠퍼스

[패스트캠퍼스] 데이터 분석 부트캠프 17기 - 3주차 파이썬(1)

geraedo 2025. 1. 4. 08:27

주요 학습 내용 요약

 

 

Part1. 데이터 분석을 위한 준비 운동

CH01. 파이썬 자료형 (Data Type)

  1. 숫자형 (Number)
    정수형 (Integer, int) : 소수접이 없는 숫자
    실수형 (Float) : 소수점 아래 표현, 정수와의 연산 가능
    자료형 변환 : int(), float(), complex() (허수)
    숫자형 연산 : + - * / //(몫) %(나머지) **(제곱)

  2. 문자형 (String)
    문자형 생성 : ' ', " ", " ' ' " 모두 사용 가능 ' " " ' 는 불가
    문자열 결합 : + 연산자로 가능
    문자열 반복 : * 연산자로 가능
    문자열 인덱싱과 슬라이싱 : str[0]부터 시작, s[:4] 처음부터 3까지, s[::2] 전체 2칸씩 건너뜀
    문자열 함수 :
    - len(), upper(), lower(), capitalize() #문자열 자체를 변화시키진 않음, 바뀐 값을 반환
    - find(sub) (없으면 1), count(sub) (없으면 0), replace() # 마찬가지로, 원데이터 변화 x, 바뀐값 반환
    - split(delimiter) #리스트로 반환, "구분자".join(iterable), strip(), lstrip(), rstrip(), in, not in
    문자열 포맷팅 : " {} ".format(변수), f" {변수} "
  3. 리스트형 (List)
    특징 : #순서 유지 #변경 가능 #중복 허용 #다양한 자료형 포함 가능
    리스트 생성 : name_list = [], lists = ['a', 'b', 'c']
    리스트 인덱싱과 슬리이싱 : str 과 동일, list[-4:] 뒤에서 4번째 부터 끝까지
    리스트의 주요 메서드 :
    - append(value), insert(index, value)
    - remove(value), pop(index) #인덱스 생략시 마지막 값 제거, clear()
    - index(value), count(value), sort() #원데이터 바꿈, reverse() #원데이터 바꿈, copy()
    - list1.extend(list2) == list1+list2
    - #2차원 데이터 인덱싱 시 list[2][3] 이렇게 접근해야 함, list[2,3] 이렇게 안됨
  4. 딕셔너리형 (Dict)
    특징 : #키-값 쌍으로 구성 #키는 고유 #변경 가능 #키는 불변 자료형만 가능 #순서없음-인덱스 접근불가
    딕셔너리 생성 : dict = {}, dict = {"name":"Hyoju", "age":24}
    딕셔너리 키로 값 접근 : dict["name"] -> Hyoju
    딕셔너리 값 추가 및 수정 : dict["city"] = "Daegu", dict["age"] = 25
    딕셔너리 값 삭제 : del dict["city"], dict.clear()
    딕셔너리의 주요 메서드 :
    - keys(), values(), items(), get(key) = value
    - update(new dict) #이미 있는 키면 값만 변경, 없는 키면 새로 생성
    - pop() #dict.get("city", "Unknown") 존재하지 않을 시 Unknown 출력
  5. 튜플형 (Tuple)
    특징 : #순서 유지 #불변 #중복 허용 #다양한 자료형 저장 가능
    튜플 생성 : tup = (), tups = ("hyoju", 25, "daegu")
    튜플 인덱싱과 슬라이싱 : tup[::-1] #전체 뒤집어서 출력
    튜플은 불변 : tup[0] = new, remove, append 등등 수정, 추가, 삭제 불가
    튜플 요소 반복 : for t in tup: print(t) 
    튜플의 주요 메서드 : count(), index()
    튜플 언패킹 : name, age, city = tups 튜플 요소 여러 변수에 할당 가능
    튜플 결합과 반복 :  + * 연산자 사용 가능

  6. 집합형 (Set)
    특징 : #중복 제거 #순서 없음 #변경 가능 #다양한 자료형 포함 가능
    집합 생성 : s = set(), s = {"hyoju", 25, "daegu"}, new = set([])
    집합 주요 연산 : set|set2 #합집합, set1&set2 #교집합, set1-set2 #차집합, set1^set2 #대칭차집합
    집합의 주요 메서드 :
    - add(value), remove(value) #값없으면 에러, discard(value) #값이 없어도 에러 발생 하지 않음
    - union(), intersection(), difference(), symmetric_difference()
    - A.issubset(B) #A는 B의 subset이다, issuperset(), clear()
    - set1&set2 == set()  #공집합 확인 

  7. 불형 (Boolean)
    특징 : #True와 False, 반드시 첫글자가 대문자 #True=1, False=0, #대부분은 True, None, 1, "", [] 등은 False
    불형 값 생성 : is_hungry = True, is_tired =  False #is ~~ 식으로 알아보기 쉽게 변수 지정
    숫자와 불형 비교 : print(True+1) -> 2
    불형의 주요 연산 및 메서드 : 
    - 논리 연산자 : and, or, not
    - 비교 연산자 : ==, !=, <, >, <=, >=
    불형과 조건문 : if True: ~ else: ~
    불형으로 변환 : bool(value), bool(0) bool(""), bool([]) #False
    불형과 어울리는 유용한 함수 : any(iterable) #하나라도 참이면 True, all(iterable) #모두 참이면 True

 


새롭게 알게 된 점 또는 깊이 있게 이해한 내용

원데이터를 바뀌게 하는 함수가 있고, 원데이터는 바뀌지 않고 바뀐 새로운 값을 출력하는 함수가 있음을 알게 되었습니다. 이 두가지를 분간하는데 어려움이 있어 실습 때 이를 숙지하고자 노력했던 것 같습니다. 
위에 적힌 내용들은 온라인 강의로도, 실시간 강의로도 다룬 내용입니다. 

같은 내용을 반복해서 들으니 복습되어서 암기하기에 용이합니다.