ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [PyScript] 파이스크립트를 이용해서 웹사이트에 파이썬 코드 써 보기
    Python/WebApp 2023. 4. 17. 07:56
    반응형

    파이스크립트를 이용해서 웹사이트에 파이썬 코드 써 보기


    프로그래밍 언어 중에서 최상위권의 인기를 누리고 있는 파이썬(Python)은 심각한 단점이 하나 있습니다. 코드는 쓰기 쉽지만 그걸로 프로그램을 만들어 배포하기는 너무 어렵다는 점인데요, 많은 파이썬 초보 개발자들과 고수 개발자들의 논의를 보면 이 단점이 와닿을겁니다.

     

    • 초보: 제가 파이썬으로 프로그램을 만들었는데, 이걸 다른 사람한테 배포하려면 어떻게 해야 하죠?
    • 고수: 깃허브같은데 올려두면 되지 않나요?
    • 초보: 아니 그거 말고, exe 파일같은걸 배포하는거 말이예요.
    • 고수: pyinstaller 한번 써보세요.
    • 초보: pyinstaller는 왜이렇게 용량이 크고 느려요? 다른 방법은 없나요?
    • 고수: 그러면 도커 이미지를 만들어서 배포해 보세요.
    • 초보: ...

     

    이런 상황은 지금도 많이 일어나고 있는 파이썬의 문제입니다. 파이썬은 우리가 흔히 쓰는 프로그램처럼, 설치파일(또는 포터블 실행이 가능한 파일)을 만들어서 배포한다는 개념이 없고, 대부분의 상황에서는 파이썬과 사용하는 패키지, 의존성이 있는 패키지를 몽땅 사용할 컴퓨터에 설치하면 된다는 개념 때문이지요. 이건 파이썬이 배우기 쉬운 언어이면서도 파이썬만으로는 프로그램 완성품을 만들기 어려운 이유이기도 합니다.

     

     

    그래서, 제가 최근에 살펴본 파이스크립트(PyScript)는 혁신이라고 해도 좋을 정도로 파이썬을 이용한 프로그램, 그 중에서 우리가 흔히 쓸 수 있는 웹앱같은걸 만들때 좋은 프레임워크입니다. 아직은 정식 릴리즈 버전이 아니기 때문에 조금 더 지켜봐야겠지만, 저 뿐만아니라 다른 개발자들도 비슷한 생각을 하고 있는 모양이더라고요. 파이스크립트의 장점은 몇 가지가 있는데, 이게 전부 엄청난 장점으로 꼽힙니다.

     

    1. 간단합니다

    웹개발의 기본 소양이 있는 분들이라면 좋을테지만, 아니라면 최소한의 HTML 구조만 배우고 오셔도 되겠습니다. HTML에 대해서 하루이틀 정도만 배워보면 파이스크립트 공식 문서를 어떻게든 따라할 수 있을 듯합니다.

     

    2. 서버에 아무 설정이나 프로그램 설치를 하지 않아도 됩니다

    자바스크립트를 쓰는 감각으로(그래서 파이스크립트라는 이름인가봅니다) 웹사이트의 헤드(head) 영역에 코드 몇 줄만 적어주면 됩니다. 바로, 아래의 코드처럼 말이죠.

     

    <link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css"/>
    <script defer src="https://pyscript.net/alpha/pyscript.js"></script>

     

     

    앞서 알려드린대로 헤드 영역에 코드를 적은 뒤, 바디(body) 영역에 파이스크립트 영역을 만들어주고, 이 안에 우리가 아는 파이썬 구문을 적어주면 됩니다. 예를 들어, 헬로월드 출력을 하고 싶다면 아래와 같이 입력해 주면 됩니다.

     

    <py-script>
        print('hello, world!')
    </py-script>

     

    이렇게 다 적었다면, html 파일을 저장하고 웹브라우저를 통해 열어보면 됩니다. 완성된 코드는 아래를 참고해 주시거나, 깃허브의 html 파일을 참고해 주세요.

     

    <!DOCTYPE html>
    <html lang="ko">
        <head>
          <title>파이스크립트로 간단한 파이썬 코드 실행해보기</title>
          <meta charset="UTF-8">
          <link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
          <script defer src="https://pyscript.net/alpha/pyscript.js"></script>
        </head>
        <body>
            <h1><strong>파이썬으로 코드 작성한 결과는 아래와 같습니다</strong></h1>
            <py-script>
                print('hello, world!')
            </py-script>
      </body>
    </html>

     

    이 코드의 결과물을 실행하면 아래와 같이 출력됩니다.

     

    파이썬으로 코드 작성한 결과는 아래와 같습니다
    hello, world!

     

    이외에도, 패키지 이용이나 파일 업로드 등의 작업이 무리 없이 수행된다고 하며, 파이스크립트 데모 페이지에 다양한 예제가 업로드되어 있으니 관심이 있는 분들은 찾아보시면 좋겠습니다.

     

     

    개인적으로는 그동안 파이썬으로 일반 사용자용 프로그램을 거의 만들지 않았고, 만든다고 해도 pyinstaller를 이용해 억지로 exe 파일로 만들어두는 식으로 구현했습니다. 그러다가 웹앱을 만들 일이 생기면서 장고(Django)를 이용했었는데, 최근 파이스크립트를 알게 되면서 더욱 간단하게 파이썬 프로그램 배포를 할 수 있을 듯해서 아주 흥미롭습니다.

     

     

    파이스크립트를 통해서 만들어 놓은 웹사이트는 본문의 코드를 복사해 보시거나 깃허브를 참고해 주시기 바라며, 더욱 다양한 코드는 배우는대로 조금 더 올려보도록 하겠습니다.

    반응형

    댓글

문의: jwkang3929@naver.com