본문 바로가기
728x90

개발/Python6

Python - 내가 만든 모듈, 다른 사람들이 사용하도록 패키징하기 1. setup.py 를 내 작업공간에 만든다 2. 프로젝트의 메타데이터(이름, 버전 등)을 아래와 같이 작성한다. (패키징 작업) from setuptools import find_namespace_packages, setup setup( name='test', version='3.2.1', description='Test', author='SungJun', author_email='xxxxx@naver.com', url='깃허브주소', #파일들이 존재하는 깃허브 주소 packages=find_namespace_packages(where='src', include=['SungJun*']), package_dir={'': 'src'}, install_requires=[ 'numpy', 'pandas', .. 2024. 3. 15.
Python 정적 메소드(@staticmethod) Python에서 Class에 담겨있는 함수를, 인스턴스 생성 없이 생성하는 방법이 있다. @staticmethod - 클래스의 인스턴스를 생성하지 않고 메서드에 접근 가능 - 메서드 내부에서 클래스 변수나 인스턴스 변수에 접근하지 않는다. 즉, 'self'나 'cls' 매개변수를 매서드에서 사용하지 않음 - 클래스나 인스턴스의 상태와 독립적인 기능을 수행하는 함수 내부에 정의할 때 사용 사용예제 class MathUtility: @staticmethod def add(a, b): return a + b @staticmethod def multiply(a, b): return a * b # 클래스 인스턴스를 생성하지 않고 메서드 호출 result_add = MathUtility.add(5, 3) resul.. 2024. 3. 14.
파이썬 EXE 파일 만들기 PyInstaller 설치 우선 명령프롬프트에서 아래의 명령어를 통해 PyInstaller 패키지를 설치합니다. pip install pyinstaller 실행파일 만들기 Python 파일이 있는 폴더로 이동한 다음, 아래 명령어를 입력하면 해당 폴더에 실행파일이 만들어집니다. pyinstaller qtextbrowser_advanced.py 만들어진 폴더에서 dist로 이동해서, 한 번 더 들어가면 아래 그림과 같이 실행파일을 찾을 수 있습니다. 더블클릭해서 실행을 해보면 아래 그림과 같이 콘솔창이 함께 출력됩니다. 콘솔창 출력되지 않도록 하기 콘솔창이 출력되지 않게 하려면 아래와 같이 명령어에 '-w' 또는 '--windowed'를 추가해줍니다. pyinstaller -w qtextbrowser_ad.. 2023. 12. 31.
파이썬 가상환경 설정법 Python 가상환경을 만드는 방법은 다음과 같습니다. 가상환경은 프로젝트별로 Python 패키지를 격리하여 관리할 수 있게 해줍니다. 가상환경 모듈 설치: 우선 가상환경을 만들기 위해 venv 모듈을 설치합니다. 만약 파이썬 버전이 3.3 이상이라면 이미 포함되어 있습니다.여기서 venv는 가상환경의 이름입니다. 원하는 이름으로 변경할 수 있습니다. python -m venv venv 가상환경 활성화: 생성된 가상환경을 활성화합니다. 활성화된 가상환경에서는 프로젝트에 필요한 패키지를 설치하고 사용할 수 있습니다. Windows: .\venv\Scripts\activate macOS/Linux: source venv/bin/activate 가상환경이 활성화되면 쉘 프롬프트 앞에 (venv)와 같은 표시가.. 2023. 12. 16.
Python @Property class Citizen: def __init__(self, age_value): self._age = age_value @property def age(self): print("나이를 리턴합니다.") return self._age @age.setter def age(self, age_value): print("나이를 새로 설정합니다.") self._age = age_value 1. @property 가 붙은 age 메소드(A)가 있으면 Citizen 클래스의 인스턴스.age , 이 코드가 실행될 때 A가 실행되고, 2. @age.setter 가 붙은 age 메소드(B)가 있으면 Citizen 클래스의 인스턴스.age = 어떤 숫자값 이 코드가 실행될 때 B가 실행된다. 즉 @property를 쓰면, 메.. 2023. 10. 11.
파이썬에서 Self란 뭘까? def 함수(Self): 파이썬을 하면서 한번쯤은 보셨을 Self입니다. def function(self): 에서 self가 의미하는 것은 무엇일까요? 바로 '인스턴스'입니다. 우리가 class를 사용하는 목표는 객체를 사용하겠단 말입니다. 이 객체가 바로 '인스턴스'라고 볼 수 있습니다. class를 사용해서 객체를 만들어 내는 것이죠. a = amuguna() 하면 클래스 amuguna의 성질을 가진 a라는 인스턴스가 생성된 것이죠. class amuguna: def func1(): print("a") def func2(self): print("a") 라는 class가 있다고 칩시다. 기존에 class에서 메서드를 이용하는 방법에는 amuguna.func1()을 하거나, self를 이용하는 방법이 있.. 2023. 9. 6.
728x90