내일배움캠프 10일차

김서영·2022년 9월 13일
0

내일배움캠프 TIL

목록 보기
12/85

1. 파이썬 심화

1) class에 대한 이해

  • class란?
    클래스를 선언하는 것은 과자 틀을 만드는 것이고, 선언된 과자틀(class)로 과자(instance)를 만든다!

    class 내부에 선언되는 메소드(함수)는 self라는 인자를 가지고 있고, self는 클래스 내에서 전역변수처럼 사용된다.

    <용어 정리>
    instance : class를 사용해 생성된 객체
    method : class 내에 선언된 함수
    self : method를 선언할 때에는 항상 첫번째 인자로 self를 넣어줘야 함

  • class의 기본 구조

  • init 함수(생성자)
    객체(인스턴스) 생성 시에 호출되는 함수로, 객체를 생성하며 여러 값을 줄 수 있게 하기 위하여 사용한다.
    -> 클래스를 초기화 하고 객체화 하면서 초기값을 설정할 수 있다.

2) mutable 자료형과 immutable 자료형

  • mutable과 immutable이란?
    - mutable : 값이 변한다
    - immutable : 값이 변하지 않는다
  • immutable 속성을 가진 자료형
    : int, float, str, tuple

  • mutable 속성을 가진 자료형
    : list, dict

  • mutable과 immutable의 차이

immutable은 같은 메모리 주소를 바라보고 있다가 값을 바꿔주면 메모리 주소를 각자 새로 생성한다.

mutable은 같은 메모리 주소를 바라보고 있다가 값을 바꿔도 같은 메모리 주소를 바라보고 있다.

2. 백준 알고리즘에서 배운 것

  • 문자열 순서 뒤집기
    1) slice
    : reversed_str = string[::-1]
    (string[start:stop:step]을 의미)
    2) reversed
    : reversed_str = "연결부위에 넣을 문자".join(reversed(string))
    3) for loop
    reversed_str = ''
    for i in string:
    reversed_str = i + reversed_str
  • 여러 함수
    - randint(start, end) 함수
    : end값을 포함한 start에서 end까지의 정수 난수를 반환
    - randrange(start, end, step) 함수
    : start에서 end까지의 범위에서 step 간격으로 된 수들 중에서 발생하는 정수인 난수 반환(end값은 포함X)

💜 오늘 느끼고 배운 점
오늘은 오전에 파이썬 심화 실시간 강의를 들은 후 점심부터 밤까지 튜터님께서 내주신 문제를 풀었다. class라는 것이 아직 잘 이해가 되지 않아 문제를 푸는데 시간이 오래 걸렸고, 아직 마지막 한 문제는 풀지 못하였다. 교육시간 외 추가적인 공부를 통해 class를 확실하게 이해하고 남은 문제를 풀어봐야 겠다.

profile
개발과 지식의 성장을 즐기는 개발자

0개의 댓글