▶ 자연과학/▷ Python

【Python】 파이썬 프로젝트 만들기: app.py

초록E 2023. 6. 12. 01:36

파이썬 프로젝트 만들기: app.py

 

추천글 :  【Python】  파이썬 목차


1. 프로젝트 구성 [본문]

2. 프로젝트 실행 [본문]


a. 파이썬 앱 라이브러리 


 

1. 프로젝트 구성 (예시) [목차]

⑴ 개요 : 다음 열거되어 있는 여러 구성 중 README.md를 제외하고는 파일명이 꼭 지켜질 필요는 없으나 관용적으로 사용됨

⑵ README.md

① 깃허브 repository를 설명해주는 마크다운 문서 : 마크다운이므로 html 코드를 삽입할 수도 있음 

② 내용 형식은 자유이며 설치 방법, 사용 방법은 꼭 써주어야 함

.py, .yml, .xml : 디렉토리 안에 있지 않은 파일들

① .py : 파이썬 스크립트 파일 

② .yml : 깃허브 홈페이지를 만들 때 가장 코어 역할을 하는 _config.yml이 가장 대표적인 예

③ .xml : 사이트맵 정보를 담고 있는 파일 

 대체로 실행 명령어인 if __name__ == '__main__':  부분을 포함하는 부분을 app.py로 지칭

⑤ 실행 방법 

 

# method 1. 터미널에서 실행
python app.py


# method 2. jupyter notebook에서 실행
import app
app.main()

 

assets/

① 여러 유용한 파일이 저장돼 있는 디렉토리 

config/

① 주로 파이썬의 경우 환경 변수들을 정의하기 위해 필요한 디렉토리 

data/

① 연산의 주요 대상이 되는, 비교적 용량이 큰 데이터가 저장돼 있는 디렉토리

pages/

① 코드가 웹사이트를 구성하고 있는 경우 웹페이지 부분을 담당하는 디렉토리

includes/ 

① 스크립트 파일이 많은 경우 따로 includes/ 폴더를 두어 소스 코드들을 저장함 

layouts/

① 코드가 웹사이트를 구성하는 경우 레이아웃 구성을 저장하기 위한 디렉토리 

⑽ posts/

① 블로그 등 주기적으로 연재하는 웹페이지를 호스팅하는 경우 그 포스팅 문서들을 저장하는 디렉토리 

⑾ drafts/

① 초안을 저장하는 디렉토리 

⑿ images/

① 여러 이미지 파일들을 저장하는 디렉토리 

⒀ example/

① 알고리즘 등과 관련된 프로젝트의 경우 그 예제 파일들을 저장하는 디렉토리

② 가령 jupyter notebook 파일인 .ipynb 파일들을 저장할 수 있음 

⒁ LICENSE.md

① 소스 코드에 대한 라이센스 정보를 기술하는 마크다운 파일 

주요 라이센스 정책 

⒂ requirements.txt : 다음과 같은 방법으로 파이썬 패키지를 설치할 수 있음

 

pip install -r requirements.txt

 

 

2. 파이썬 프로젝트 실행 [목차]

방법 1

1단계. Jupyter 노트북이나 Jupyter 랩을 열기

2단계. 리눅스 터미널에서 SuperST를 Git 클론 

 

git clone https://github.com/portrai-io/IAMSAM.git

 

3단계. app.py와 동일한 디렉토리에 Jupyter 노트북 파일을 생성

4단계. app.py에서 모든 함수를 Jupyter 노트북 파일로 호출 

 

from app import *

 

방법 2

1단계. .py 파일 준비하기 : 다음은 예시 파일

 

app.py
0.00MB

def func(a, b):
	return a + 3 * b

if __name__ == '__main__':
    import argparse
    
    parser = argparse.ArgumentParser(description='Example usage: python app.py --a 3 --b 4')
    parser.add_argument('--a', type=int, help='Input a')
    parser.add_argument('--b', type=int, help='Input b')
    args = parser.parse_args()
    print("a = " + str(args.a) + ", b = " + str(args.b) + ", sum = " + str(func(args.a, args.b)))

 

2단계. 리눅스 터미널 열기

3단계. 아래와 같은 명령을 입력

 

python app.py --a 3 --b 4

 

방법 3 

1단계. 리눅스 터미널 열기

2단계. 아래와 같은 명령을 입력

 

python
import app
app.main()

 

입력: 2023.06.12 01:06