네임스페이스란 무엇일까요?네임스페이스(Namespace)는 파이썬에서 변수의 범위(scope)를 구현하는 핵심 메커니즘입니다. 패키지, 모듈, 클래스, 함수, 메서드 각각은 고유한 네임스페이스를 가지며, 변수 이름은 바로 이 네임스페이스 안에서 해석됩니다.네임스페이스의 생성과 소멸함수, 모듈, 패키지가 평가되어 실행을 시작하는 순간 새로운 네임스페이스가 생성됩니다. 이를 일종의 실행 컨텍스트(evaluation context)라고 생각하면 이해하기 쉽습니다. 실행이 끝나면 해당 네임스페이스는 함께 제거되고, 그 안에 있던 변수들 역
파이썬 내장 함수 locals(), globals(), vars()란?파이썬에는 현재 스코프(범위)에 어떤 변수들이 존재하는지 확인할 수 있는 유용한 내장 함수들이 있습니다. 대표적으로 locals(), globals(), vars() 세 가지가 있으며, 각각 반환하는 네임스페이스(이름 공간)의 범위가 다릅니다.globals()와 locals()의 기본 개념locals()는 지역 스코프(local scope)에서 선언된 변수들을 딕셔너리 형태로 반환하고, globals()는 전역 스코프(global scope)에서 선언된 변수들을
reload() 함수의 기본 개념파이썬에서 reload(moduleName) 함수는 이전에 불러온(import) 모듈을 다시 로드하는 역할을 합니다. 단, 이 함수가 정상적으로 작동하려면 해당 모듈이 import moduleName 형태로 이미 로드되어 있어야 합니다.이 함수는 주로 대화형(인터랙티브) 환경에서 유용하게 사용됩니다. 예를 들어, 파이썬 인터프리터를 종료하지 않은 상태에서 모듈의 소스 파일을 수정한 뒤, 변경 사항을 즉시 테스트하고 싶을 때 reload()를 사용하면 편리합니다.사용 예제>>> impo
파이썬 패키지(Package)의 개념파이썬에서 패키지(package)를 제대로 이해하려면 먼저 모듈(module)에 대한 개념을 알아야 합니다. 파이썬에서는 모든 .py 파일이 하나의 모듈이며, 모듈의 이름은 파일 확장자(.py)를 제외한 파일명, 즉 해당 모듈의 __name__ 속성과 같습니다.그렇다면 패키지는 무엇일까요? 패키지는 여러 파이썬 모듈을 모아놓은 집합체입니다. 좀 더 구체적으로 말하면, 파이썬 모듈들이 들어 있는 디렉터리(폴더)에 추가로 __init__.py 파일이 포함된 것을 패키지라고 부릅니다.__init__.p
로컬에 설치된 Python 모듈 목록을 확인하는 방법은 여러 가지가 있습니다. 상황에 따라 적합한 도구가 다르므로, 대표적인 세 가지 방법을 예제와 함께 살펴보겠습니다. 1. Python 셸에서 help() 함수 사용하기 가장 간단한 방법은 Python 인터프리터(셸)에서 help(modules) 명령을 실행하는 것입니다. >>> help(modules) Please wait a moment while I gather a list of all available modules... BaseHTTPServer
파이썬을 설치하면 기본적으로 패키지 관리 도구인 pip도 함께 설치됩니다. pip를 활용하면 설치된 파이썬 모듈의 버전을 손쉽게 확인할 수 있습니다. 이 글에서는 모듈 버전을 확인하는 다양한 방법을 소개합니다. 1. pip freeze로 전체 모듈 목록 확인하기 설치된 모든 파이썬 모듈과 각각의 버전 번호를 한눈에 확인하고 싶다면 아래 명령어를 사용하세요. $ pip freeze 실행하면 다음과 같은 형태의 출력 결과를 얻을 수 있습니다. asn1crypto==0.22.0 astroid==1.5.2 attrs==16.3.0 Aut
파이썬에서는 PDFMiner 패키지를 사용해 PDF 파일을 텍스트로 변환할 수 있습니다. PDFMiner는 레이아웃 분석 기능이 뛰어나고 다양한 출력 형식(텍스트, HTML, XML 등)을 지원하기 때문에 복잡한 구조의 PDF 문서를 처리할 때 특히 유용합니다.PDFMiner를 이용한 텍스트 추출 예제아래 코드는 PDFMiner(현재 유지보수되는 버전은 pdfminer.six)를 사용하여 PDF 파일을 페이지 단위로 읽고 전체 텍스트를 추출하는 방법을 보여줍니다.from io import StringIO from pdfminer.p
Python 모듈의 경로를 확인하는 방법순수 Python으로 작성된 모듈이라면 module.__file__ 속성을 확인하는 것만으로 해당 모듈 소스 파일의 위치를 쉽게 찾을 수 있습니다.>>> import mymodule>>> mymodule.__file__C:/Users/Ayush/mymodule.py위 예시처럼 __file__ 속성에는 모듈이 로드된 실제 파일 경로가 문자열로 저장되어 있으므로, 이를 출력하면 소스 파일이 어디에 있는지 바로 알 수 있습니다.C로 작성된 내장 모듈의 경우다만 많은
Python 모듈을 다시 로드하는 방법파이썬에서는 reload() 함수를 사용하여 이미 로드된 모듈을 스크립트를 종료하지 않고도 다시 불러올 수 있습니다. 이 기능은 특히 대화형(인터랙티브) 환경에서 유용합니다. 모듈의 소스 파일을 수정한 뒤, 파이썬을 종료하고 다시 실행하지 않아도 변경 사항을 즉시 테스트할 수 있기 때문입니다.기본 사용법>>> import mymodule>>> # mymodule을 수정한 후 현재 세션에서 다시 로드>>> reload(mymodule)주의할 점은 m
Python 모듈 소스 위치 찾기순수 Python으로 작성된 모듈의 경우, module.__file__ 속성을 확인하면 소스 파일의 위치를 쉽게 찾을 수 있습니다. 예를 들어 다음과 같습니다.>>> import mymodule>>> mymodule.__file__C:/Users/Ayush/mymodule.py내장 모듈의 경우 주의할 점하지만 많은 내장(built-in) 모듈은 C 언어로 작성되어 있어 module.__file__이 .so 공유 라이브러리 파일을 가리킵니다(Windows에서는 __fil
파이썬 모듈이란? 모듈(module)은 파이썬의 정의(함수, 클래스 등)와 문장들을 담고 있는 하나의 파일입니다. 파일 이름은 모듈 이름 뒤에 .py 확장자를 붙인 형태가 됩니다. 예를 들어 mymodule.py라는 파일이 있다면 이것이 바로 mymodule이라는 모듈입니다. 간단한 모듈 만들기 먼저 helloworld.py라는 파일을 생성하고, 아래와 같은 함수를 내용으로 작성합니다. def hello_world(): print(Hello world) 모듈 가져오기(import)해서 사용하기 이제 같은 디렉터리 안에 s
파이썬에서는 변수 선언이 필요 없습니다결론부터 말하자면, 파이썬에서는 변수를 미리 선언할 필요가 전혀 없습니다.아래에서 그 이유와 배경을 자세히 살펴보겠습니다.정적 타입 언어 vs 동적 타입 언어C, C++, Java, C# 같은 정적 타입(statically typed) 언어는 변수를 프로그램에서 사용하기 전에 반드시 이름과 자료형(타입)을 함께 선언해야 합니다. 컴파일러는 해당 변수에 올바른 종류의 데이터만 저장되도록 검사합니다.예를 들어 C 언어에서 정수 값을 저장할 변수를 만들려면 다음과 같이 선언해야 합니다.int x;선언
Windows에 Python 설치하는 방법Python 표준 배포판 공식 웹사이트(https://www.python.org/downloads)의 다운로드 페이지에서는 Python 3.x 및 2.x 버전용 설치 프로그램을 제공합니다. 글 작성 시점 기준으로 Python 3.6.2와 Python 2.7.13에 대한 32비트 및 64비트 MSI 설치 프로그램을 내려받을 수 있습니다. 사용 중인 시스템(32비트 또는 64비트)과 필요한 버전에 맞는 설치 프로그램을 선택해 다운로드하세요.설치 마법사 진행하기다운로드한 설치 프로그램을 관리자 권
파이썬 식별자(Identifier)란 무엇인가?파이썬 프로그램에서 식별자(identifier)는 변수, 함수, 클래스, 모듈, 패키지 등 코드 안의 다양한 요소에 붙이는 이름을 의미합니다. 즉, 개발자가 만드는 모든 객체를 구별하고 참조하기 위한 고유한 이름이라고 할 수 있습니다.유효한 식별자의 기본 규칙파이썬에서 유효한 식별자를 만들려면 다음 규칙을 반드시 지켜야 합니다.식별자는 알파벳(대문자 또는 소문자) 또는 밑줄(_)로 시작해야 합니다.첫 글자 이후에는 알파벳, 숫자, 밑줄을 자유롭게 여러 개 붙일 수 있습니다.숫자로 시작하
파이썬 예약어(Reserved Words)란?예약어(Reserved Words), 또는 키워드(Keyword)는 프로그래밍 언어 안에서 미리 정해진 의미와 문법을 가진 단어를 말합니다. 이러한 키워드는 프로그램의 명령문을 작성할 때 반드시 사용되는 핵심 요소이며, 파이썬 인터프리터가 코드를 해석하는 기준이 됩니다.가장 중요한 특징은 예약어는 변수 이름이나 함수 이름 같은 식별자(Identifier)로 사용할 수 없다는 점입니다. 예를 들어 if, for, class 같은 단어를 변수명으로 지정하면 문법 오류(Syntax Error)
프로그래밍을 하다 보면 여러 개의 문장(statement)을 하나의 블록으로 묶어서 처리해야 하는 경우가 자주 발생합니다. 프로그래밍 언어마다 클래스, 함수, 조건문, 반복문 같은 구조에서 블록의 범위를 정의하는 방식은 서로 다릅니다.언어별 블록 정의 방식예를 들어 C나 C++에서는 중괄호 { } 안에 있는 문장들을 하나의 블록으로 취급합니다. 반면 파이썬(Python)은 중괄호 대신 균일한 들여쓰기(indentation)를 사용해 문장 블록을 표시합니다.파이썬에서 들여쓰기 사용 방법블록이 시작되기 전에는 콜론(:) 기호가 먼저 사
json과 simplejson, 어떤 관계일까?Python 표준 라이브러리(stdlib)에 포함된 json 모듈은 사실 simplejson을 표준 라이브러리에 편입시킨 것입니다. 다만 json이 Python 2.6부터 추가되었기 때문에, simplejson은 그보다 오래된 버전(2.4 이상)까지 지원한다는 장점이 있습니다.업데이트 속도의 차이simplejson은 Python 자체보다 훨씬 자주 업데이트됩니다. 두 모듈이 본질적으로 동일하다고 해도, 표준 라이브러리에 포함된 버전에는 최신 성능 최적화가 반영되어 있지 않습니다. 따라서
dir() 함수로 모듈의 모든 속성 확인하기파이썬에서 모듈이 제공하는 모든 속성과 메서드를 한눈에 확인하려면 내장 함수인 dir(module)을 사용하면 됩니다. 이 함수는 해당 모듈에 정의된 이름들을 리스트 형태로 반환합니다. 예를 들어 math 모듈의 구성 요소를 확인해 보겠습니다.>>> import math>>> dir(math)[__doc__, __name__, __package__, acos, acosh, asin, asinh, atan, atan2, atanh, ceil, copysign,
파이썬 모듈 설치의 표준 방법, pip파이썬(Python) 모듈을 설치하는 가장 좋고 권장되는 방법은 파이썬 공식 패키지 관리 도구인 pip를 사용하는 것입니다. pip를 활용하면 PyPI(Python Package Index)에 등록된 수많은 패키지를 간단한 명령어 한 줄로 손쉽게 설치하고 관리할 수 있습니다.pip가 이미 설치되어 있는 경우python.org에서 Python 2.7.9 이상 또는 Python 3.4 이상을 설치했다면 pip와 setuptools가 이미 함께 포함되어 있습니다. 다만 최신 기능과 보안 업데이트를 위
pip 명령어로 Python 패키지 삭제하기Python에서 설치한 대부분의 패키지는 pip 명령어를 사용해 손쉽게 제거할 수 있습니다. pip uninstall에 대한 자세한 내용은 공식 문서(https://pip.pypa.io/en/stable/reference/pip_uninstall/)에서 확인할 수 있습니다.예를 들어, numpy 패키지가 설치되어 있고 이를 삭제하고 싶다면 터미널에서 다음 명령어를 입력하면 됩니다.$ pip uninstall numpypip로 삭제할 수 없는 예외 경우하지만 모든 패키지가 pip로 깔끔하게