8
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

MYJLabAdvent Calendar 2021

Day 21

pythonライブラリの作成方法

Last updated at Posted at 2021-12-20

MYJLab Advent Calendar 2021 12日目の記事です。

論文が書き終わらず瀕死のmoffyが担当します。なので内容薄めです。ごめんなさい😞

そんでもって2番ぜんじの記事になりますがご容赦を。

ライブラリの作成方法

宮治ゼミ内ではほとんどの人が使っていると思われるpython。めちゃ便利ですよね。

機械学習では主流、できること多いし、メモリのことも考えなくていいし、型もつけなくて動く、何なら日本語の変数名をつけても大丈夫。

プログラム初心者からしたら使いやすいことも違いなしのプログラム言語ですが、こいつはツール作成の分野でこそ一番輝きを発すると思います。

よって今回はライブラリ作成方法のご紹介です。この記事では例として宮治先生(ゼミ)のwebサイトにアクセスしてhtmlをgetするライブラリを作成します

##ファイル構成
この記事では例としてget_myjというライブラリを作成します。

スクリーンショット 2021-12-20 17.09.40.png

親フォルダの下に子フォルダとsetup.pyを作成します。

setup.pyではライブラリの名前、作成者、version、依存関係のあるライブラリなど設定を記述しています。

setupについて詳しく知りたい人は公式docを読んでください。それが一番あなたのためになります。

以下ファイルの内容です。

setup.py

from setuptools import setup, find_packages

setup(
    name="get_myj",
    version="1.0.0",
    author="moffy-Black",
    packages=find_packages(),
    install_requires=["requests"],
    include_package_data=True,
)

子フォルダ内ではライブラリが実行する処理のinitとmainを記述します。

要するにフォルダででっかいクラスを書いているようなものです。

init.py

from requests import get
from pprint import pprint

class GetMyj:
    def __init__(self,url) -> None:
        self.url = url

    def run(self):
        req = get(self.url)
        pprint(req.text)

main.py

from get_myj import GetMyj

myj_obj = GetMyj(url="https://www.myjlab.org/")
myj_obj.run()

ライブラリのインストール

pipコマンドでインストールできます。

localのpathを指定してあげる必要があります。

pip instal ./get_myj

ライブラリを実行すると宮治ゼミ紹介のHTMLをgetすることができます。

 python -m get_myj

ということでライブラリ作成方法の紹介でした。

ライブラリにしてPyPIやgithubで公開するとツールの共有に便利です。今回はそこまで書きませんがここらへんの記事を見ると概要はわかりやすいです。

便利ツールをバンバン書いてめんどくさい業務を短縮化しましょう。よきプログラマ生活を👋

8
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?