Python/초심자를 위한 빅데이터 분석 및 머신러닝 응용과정

[easyupclass] 초심자를 위한 빅데이터 분석 및 머신러닝 응용과정(파이썬) 2강 ~ 4강

김초송 2022. 10. 19. 16:57
  • 식별자
    변수, 함수, 클래스, 모듈 등의 이름
    규칙: 소문자, 대문자(클래스), 숫자(가장 앞에는 불가), _(변수, 함수)
    예약어 사용 불가
    candy_bar : 변수, 함수
    lowDashError : 클래스

  • 데이터 타입
    파이썬은 동적 타이핑 = 자동으로 타입 설정

%whos 선언된 변수 함수 볼 수 있음


데이터 타입

  1. 숫자
    int : 정수
    float : 실수
  2. 문자 : str
  3. 리스트 []
    순서가 있고 수정 가능
    안에 들어가는 데이터는 모든 타입 가능
    0부터 시작
    1. offset index
      # slicing
      list[n:m] : n부터 m-1까지 return
      list[::-1] : 역순으로 출력
      list[시작:끝:간격]
    2. 함수 -> 데이터 타입에 따라 사용할 수 있는 내장함수 존재
      #추가 : append()
      #정렬 : 오름차순 - sort(), 내림차순 - sort(reverse=True)
      #삭제 : 맨 뒤의 값 뽑기 - pop(), index 값 뽑기 - pop(index)
                  -> pop으로 뽑힌 값 변수에 선언할 수 있음
                  완전삭제 - del list[index] / list.remove (value)
                  -> 선언 불가
      #복사 : copy() -> 깊은 복사= 데이터를 복사
                  list2 = list1 -> 얕은 복사 = 주소값만 복사
                                           list1값을 바꾸면 2의 값도 변함
  4. 튜플 (tuple) ()
    순서가 있고 수정 불가능
    list보다 공간 적게 사용
    tp1 = 1,2,3     /     tp2 = (1,2,3)      ->  둘 다 튜플형
    * 변수 여러 개 선언할 때랑 헷갈려서 튜플은 () 선언 권장
    index 사용 가능
    절대로 변경되면 안되는 데이터 작성
         ex) 카드 포인트 적립 rate

  5. 사전 (dict) {key:value}
    순서가 없고 key, value 쌍으로 구성
    value에 모든 데이터 타입 가능 
    1. 작성 방법
      dict ={
         key : value
      }

      dict = {}
      dict[key] = value
    2. 출력 방법
      dict[key]
      * index 불가능 -> 순서가 없기 때문에
    3. key, value값 확인
      keys() : key 값 확인 -> 리스트 타입
      values() : value 값 확인
      items() : key, value 쌍으로 확인 -> 쌍 : 튜플 타입 ( 수정 불가능!! )


Type Change 형변환

- int, float, str, bool, list, tuple, dict

- int <-> bool (True, False)

   True: 0이 아닌 숫자
   False : 0
- 바꿀 타입명(식별자)

   list(dic.values())
   * dic.valuse()는 리스트처럼 보이지만 리스트는 아님.

- list -> dict
   zip: 같은 index 묶어주는 함수
   dict(zip(list1, list2))   ->  list로 형변환할 수도 있음

 

연산자

  • 재할당
    a = a * 1.1
    a *= 1.1
    +=, -=, /= 다 가능
  • 비교 연산자 : 결과값 bool
  • 논리 연산자 : and, or, not, 결과값 bool
                        and - True+True만 True
                        or - False+False만 False
                        not 붙으면 반대
                        -> 딥러닝 퍼셉트론에서 다시 나옴
  • 멤버 : in, not in