본문 바로가기

Python_programming

(24)
[Python] " side effect (부수 효과) " 에 대한 고찰 https://dev.to/dev0928/what-is-a-side-effect-of-a-function-in-python-36ei What is a side-effect of a function in Python? Any meaningful function or procedure needs some sort of data from its calling environment to produce... dev.to 이번 포스팅은 위 글을 번역 및 실습하면서 이에 대한 보충 설명을 덧붙이는 형식으로 진행하겠습니다. (검은색이 아닌 색깔의 글자는 저의 추가적인 설명이나 사견임을 유의하고 읽어주세요) Any meaningful function or procedure needs some sort of data fr..
[Python] 함수(function)와 메서드(method)의 차이점 https://www.geeksforgeeks.org/difference-method-function-python/ Difference between Method and Function in Python - GeeksforGeeks A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions. www.geeksforgeeks.org 이번 포스팅은 위 글을 번역 및 실습하고 마지막에 제 의견으로..
파이썬 '예외 처리' 기본 개념 파이썬에서 '예외 처리'에 대한 방법을 정리해보겠습니다. '파이썬 코딩 도장 Unit 38. 예외처리 사용하기' 내용을 예시 코드와 설명까지 대부분 따라하고 있으니 참고해주세요. (공부하면서 알게되어 추가된 내용 있음 - raise 부분) '파이썬 코딩 도장 Unit 38. 예외처리 사용하기' 링크는 맨 아래 첨부했으니, 이 포스트를 한 번 훏어보고 넘어가셔서 공부하면 더 좋습니다 :) 1. try except -기본 틀: 1.1 - try: 실행할 코드 except: 예외가 발생했을 때 처리하는 코드 예시 코드 try: x = int(input('나눌 숫자를 입력하세요: ')) y = 10 / x print(y) except: print('예외가 발생했습니다.') 기본 틀에서 나온대로 try 문은 그대..
'callable object' 에 대한 고찰 https://stackoverflow.com/questions/111234/what-is-a-callable What is a "callable"? Now that it's clear what a metaclass is, there is an associated concept that I use all the time without knowing what it really means. I suppose everybody made once a mistake with parenthesis, res... stackoverflow.com object is not callable 이란 문구이자 에러를 파이썬 프로그래밍을 하다 보면 한 번쯤은 보게 된다. 콜러블은 그냥 소괄호가 () 있어야 되는 것 정도로만 알고..
'정보 은닉'에 대한 고찰 파이썬에서는 속성과 메서드가 전부 외부에 공개되므로 속성을 감출 수 있는 방안은 없다. 이런 속성을 감추는 것을 "정보 은닉" 이라고 한다. '감추는 것'이라 함은 100퍼센트 감춰지는 것' 은 아니다. 1. "_이름" 클래스 내부에 언더바(_) 1개가 붙어있는 속성이나 메서드는 관행적으로 privat으로 처리함을 의미한다. 이는 외부에서 보호된 이름으로 사용되기에 호출해서 사용하면 안된다. 즉, 클래스를 사용할 때 내부적으로만 사용할(=외부에서 호출하지 않을) 속성이나 메서드는 언더바(_)를 1개 붙이면 된다. "_속성명"은 관행상 접근을 보호해야 하므로 별도의 메서드를 구현해서 작성한다. 프로그램 작성 시 이 속성에 직접 접근하지 않고 메서드를 이용해서 실행해보자. * 코드 설명 * Protected..
Python 생성자(__new__)에 대한 고찰 "클래스 속성과 메서드"는 예전에 다른 포스팅에서 잠시 다룬적 있지만 이번에는 "생성자"에 포커스를 맞춰서 정리해보겠습니다. 파이썬에서 클래스 만들 때, self 라고 하는 "인스턴스화 될때의 레퍼런스"를 갖고 있는 매개변수를 넣어줍니다. 그런데, "self 고찰"포스팅 마지막 부분에 self 를 꼭 넣어줘서 인스턴스 메서드나 속성에 접근하는거 이외에 클래스 자체에도 접근할 수 있게끔 클래스 속성이나 클래스 메서드도 있다라고 얘기를 했습니다. 이 때, 생성자라는 개념을 알아야 하는데요. 생성자는 정적 메서드(static method)이고 첫 번째 매개변수는 cls , 즉 클래스 객체를 받아서 처리합니다. 생성자는 아무 것도 하지 않는 인스턴스 객체를 생성만 합니다. 인스턴스 내의 속성은 초기화에서 처리하..
Python self 에 대한 고찰 클래스 내부에 정의된 함수인 메서드의 첫번째 인자는 self 를 넣는 기초 예제가 많습니다. self는 예전에 포스팅에서 잠깐 다룬적 있지만, 자세히 다루지 않았기에 이번 포스팅에서 조금 자세히 self 만 다뤄보려고 합니다. 보통 클래스 안에 메서드를 작성하고 그 안에 첫 번째 인자는 self 를 작성하도록 배웁니다. self 가 첫번째 인자로 들어가 있지 않은 메서드는 (아래 사진에 나오는) 에러가 발생합니다. 위 코드에서 메서드를 호출한 결과를 보면 화면에 정상적으로 'second, function 2'가 출력됩니다. function02 메서드의 첫 번째 인자는 self지만 호출할 때는 아무것도 전달하지 않는 이유는 첫 번째 인자인 self에 대한 값은 파이썬이 자동으로 넘겨주기 때문입니다. 그렇다..
Python 고정 위치 인자, 가변 위치 인자, 고정 키워드 인자, 가변 키워드 인자 에 대한 고찰 지금부터 정리하는 것은 저의 사견입니다. 틀린 부분이 있음을 주의해주세요! 있다면, 댓글로 알려주시면 정말 감사하겠습니다! 파이썬 함수 관련 글에서 "고정" 인자라는 표현은 쓰는 곳이 있고 안 쓰는 곳이 있다. 이 의미는 사실 이미 어딘가에 포함된 의미이고 어찌보면 당연하게 "내장된" 의미라고 생각해서 이에 대한 설명은 자세히 안하는 곳이 더 많은 것 같다. 나와 같이 "고정 인자" 라는 표현을 어딘가에서 봤을 수 있는데 명확히 정리하고 싶은 "정리충"을 위해 굳이 이 글에서 정리해보고자 한다. 우선, 파이썬에서 함수를 정의할 때, 매개변수를 정의할 때, 인자의 갯수가 정해져있는 것(고정)과 정해져있지 않은 것(가변)으로 나뉜다. -> (글쓴이 생각) 좀 더 정확하게는 "고정"의 뜻은 반드시 인자로 전달..