불타는 키보드

고정 헤더 영역

글 제목

메뉴 레이어

불타는 키보드

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기
    • 소프트웨어
      • 네트워크
      • 인프라
      • 자료구조 + 알고리즘
      • 운영체제
      • 디자인 패턴
    • 언어
      • Javascript + Typescript
      • Python
      • HTML + CSS
    • 프레임워크+라이브러리
      • Django
      • Express
      • Vue
    • 데이터베이스
      • NoSQL
      • RDBMS
    • 버전관리도구
      • Git
    • 나의 기록
      • 낙서장
      • 그냥 글
      • 초보는 장비탓을 한다
      • 기타 일지

검색 레이어

불타는 키보드

검색 영역

컨텐츠 검색

언어/Python

  • [python]패키지, 모듈

    2021.03.18 by moonionn

  • [python]튜플, 왜 쓰는걸까?

    2021.03.18 by moonionn

  • [python]함수의 인자 형태와 순서 / (non)default value parameter, *args, **kwargs

    2021.03.17 by moonionn

  • [Python] 문자열을 붙이는 다양한 방법 (string concatenation)

    2021.03.17 by moonionn

  • 파이썬 매직 메소드(던더 메소드)

    2021.02.28 by moonionn

  • 파이썬 예외처리 (try, except, else, finally, assert)

    2021.02.26 by moonionn

  • 가변객체(mutable)와 불변객체(immutable) / 파이썬

    2021.02.19 by moonionn

  • 객체지향 프로그래밍과 그 특징(추상화, 캡슐화, 상속성, 다형성) / 파이썬 예시

    2021.02.19 by moonionn

[python]패키지, 모듈

아래는 코딩테스트를 풀 때 가장 많이 쓰는 코드 중 하나입니다. from sys import stdin input = stdin.readline 이 코드는 현재 파일에 sys.stdin 모듈을 불러오는 코드입니다. 모듈은 개발과정에서 필수불가결한 존재입니다. 다른사람이 짠 코드를 내 코드와 융합해 사용할 수 있게 할 뿐 아니라 유지보수적인 관점에서도 아주아주 핵심적인 역할을 합니다. 그렇다면 파이썬은 이 모듈을 어떤 식으로 불러오는 걸까요? 모듈을 import하는 과정 우선 파이썬에서 모듈을 import 했을때 해당 모듈을 찾아가는 과정을 알아보고자 합니다. 1. sys.modules sys의 modules는 import된 모듈들을 딕셔너리 형태로 저장합니다. 따라서 모듈 import시 먼저 sys.mo..

언어/Python 2021. 3. 18. 17:25

[python]튜플, 왜 쓰는걸까?

튜플의 생김새는 아래와 같습니다. data = (1,2) 가장 흔하게 볼 수 있는 생김새는 다른 자료구조 내부에 element로 포함된 모양새입니다. data = [(1,2), (2,3), (3,4)] 그런데 왜 이 튜플 타입을 사용해야 하는걸까요? 튜플 대신 리스트 타입을 써도 괜찮아 보이는데요, 심지어 튜플은 내부 element 내용을 변경할 수도 없습니다! # 이렇게 하면 안되는 걸까? data = [[1,2], [2,3], [3,4]] 튜플이 필요한 이유 결과부터 말하자면 튜플이 필요한 이유는, 튜플은 리스트와 비교해서 더 메모리용량을 아끼고 퍼포먼스를 향상시키는데 도움이 되기 때문입니다. 리스트는 비교적 무겁다 파이썬의 리스트는 다른 언어(ex: C 언어)의 자료구조 중 배열(array) 타입과..

언어/Python 2021. 3. 18. 11:01

[python]함수의 인자 형태와 순서 / (non)default value parameter, *args, **kwargs

파이썬의 함수는 정말 다양한 형태의 인자를 받습니다. 인자값의 기본값 유무에 따라 non-default value parameter와 default value parameter로 나뉘기도 하면서, 이 두 인자형태를 여러개 받을 수 있는 *args와 **kwargs로 나뉘기도 합니다. 좀 더 정확한 설명을 위해 (non)/default value parameter부터 살펴봅시다. non-default value parameter non-default value parameter는 미리 값이 정해지지 않은 인자입니다. 가장 흔하게 쓰이는 인자타입이기도 한데, 함수를 호출할 때 인자의 순서대로 인자값을 넣어주어야 합니다. def use_non_default_value_parameter(name, occupat..

언어/Python 2021. 3. 17. 23:32

[Python] 문자열을 붙이는 다양한 방법 (string concatenation)

표현하고자 하는 문장 He is John Doe, and he is 22 years old. 1. 가장 기본적인 방법 first_name = 'John' last_name = 'Doe' age = 22 print('He is ' + first_name + ' ' + last_name + ', and he is ' + str(age) + ' years old.') 하지만 위의 방법은 너무 불편합니다. 그래서 파이썬에는 다양한 string formatting 방법이 존재합니다. 2. % 연산자 first_name = 'John' last_name = 'Doe' age = 22 print(('He is %s %s and is %i years old.') % (first_name, last_name, age))..

언어/Python 2021. 3. 17. 16:39

파이썬 매직 메소드(던더 메소드)

더블언더스코어를 낀 메소드의 정체 파이썬에서는 객체에서 불러올 수 있는 메소드 중 __메소드이름__ 이런 식으로 더블언더스코어가 양쪽으로 붙어있는 메소드들이 있습니다. 이들은 매직 메소드 (혹은 스페셜 메소드, 혹은 던더 메소드) 라고 합니다. 파이썬의 매직메소드는 프로그래머에 의해 직접적으로 쓰이기 보다는 객체에 어떤 액션을 취하느냐에 따라 클래스에서 내부적으로 처리됩니다. 예를 들면, 우리는 a 와 b의 값을 더할때 a + b라고 표기합니다. 그런데 사실 a + b는 a 객체가 가지고 있는 메소드 __add__()에 의해 실행됩니다. a+b # 위 아래 코드는 동일 a.__add__(b) 각 객체가 가지고 있는 매직메소드는 dir() 를 통해 확인할 수 있습니다. print(dir(int)) # ['..

언어/Python 2021. 2. 28. 04:57

파이썬 예외처리 (try, except, else, finally, assert)

파이썬의 예외(에러)종류 파이썬은 에러를 다양한 클래스로 나누어 정의합니다. 파이썬보다 자바스크립트를 먼저 접해본 저에게 가장 어리둥절한 부분 중 하나가 바로 이 파이썬의 에러처리였습니다. 자바스크립트였으면 처리되었을 코드인데, 파이썬에서는 툭하면 에러를 뱉고 프로세스가 죽어버리죠. 예1) 10/0 javascript console.log(10/0) // 결과: Infinity typeof(Infinity) // 결과: 'number' python print(10/0) # 결과: ZeroDivisionError: division by zero 예2) 1+'1' javascript console.log(1+'1') //결과: '11' python print(1+'1') #결과: TypeError: unsu..

언어/Python 2021. 2. 26. 16:22

가변객체(mutable)와 불변객체(immutable) / 파이썬

저번 글에서 객체와 객체지향 프로그래밍의 성격을 간단히 알아보았는데요, 파이썬 또한 모든걸 객체로 관리하기 때문에 객체지향을 지원하는 언어라고 할 수 있습니다. print(isinstance('this is string', str)) print(isinstance(['this','is','list'], list)) print(isinstance(('this','is','tuple'),tuple)) # True # True # True 객체에는 세 가지 특징이 있습니다. value type identity 메모리에 저장된 값 int, str, dict 등등 객체의 데이터 타입 일종의 객체 생성자 각 객체가 가진 고유한 ID 일종의 메모리 주소 type() 로 확인 가능 id() 로 확인 가능 a is b ..

언어/Python 2021. 2. 19. 22:37

객체지향 프로그래밍과 그 특징(추상화, 캡슐화, 상속성, 다형성) / 파이썬 예시

객체(Object)? 객체지향 프로그래밍(OOP)? '객체(Object)' 하면 무엇이 떠오르시나요 어떤 분들은 일반적인 사물을 뜻하는 단어를 떠올릴 수도 있고, 어떤 분들은 예술용어인 오브제를 떠올릴 수도 있겠네요. 프로그래밍 분야에서의 객체는, -한 문장으로 표현하기는 어렵지만- 연관성있는 데이터 정보들의 집합이 되는 데이터타입(출처링크) 이라고 할 수 있습니다. 보통 클래스를 통해 생성되며, 다른 말로는 인스턴스(instance)라고 표현되기도 하죠. 객체지향 프로그래밍은 데이터를 이 객체를 중심으로 관리하는 방법을 뜻합니다. 보통 객체는 그 특성이 되는 속성(properties)과 객체관련 함수인 메소드(method) 등을 포함하고 있습니다. 따라서 연관성있는 데이터의 정보를 묶어서 관리하기 때문..

언어/Python 2021. 2. 19. 01:27

추가 정보

인기글

최신글

페이징

이전
1
다음
TISTORY
불타는 키보드 © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바