スキップしてメイン コンテンツに移動

Pythonの基本(Part 4)

Pythonの基本(Part 4)

16. モジュールの作成と利用

Pythonでは、自分自身でモジュールを作成して再利用することができます。

例えば、以下のような関数を持つmy_module.pyというファイルを作成し、別のスクリプトでそのモジュールを利用できます。

# my_module.py
def add(a, b):
    return a + b

# 別のスクリプト
import my_module

print(my_module.add(3, 5))  # 8を出力します

17. テストとデバッグ

Pythonでは、unittestpytestなどのライブラリを使用してテストを作成することができます。また、print()文やデバッガを使用してデバッグを行うこともできます。

# test_example.py
import unittest
from my_module import add

class TestAddFunction(unittest.TestCase):
    def test_add(self):
        self.assertEqual(add(3, 5), 8)

if __name__ == '__main__':
    unittest.main()

# テストを実行する
# $ python test_example.py

18. パッケージの作成

複数のモジュールを含むパッケージを作成することもできます。パッケージは、複数の関連する機能をひとまとめにするために使用されます。

my_package/
│   __init__.py
│
├── module1.py
└── module2.py

19. 仮想環境の使用

Pythonプロジェクトごとに独立した環境を作成することができます。これにより、プロジェクトごとに異なるライブラリのバージョンを使用することができます。

# 仮想環境の作成
# $ python -m venv myenv

# 仮想環境の有効化
# Windows
# $ myenv\Scripts\activate
# macOS/Linux
# $ source myenv/bin/activate

# 仮想環境の無効化
# $ deactivate

20. コミュニティとドキュメント

Pythonには広大なコミュニティがあり、質問や情報を共有するための多くのオンラインリソースがあります。また、公式ドキュメントも充実しており、Pythonの機能やライブラリの使用方法を学ぶのに役立ちます。

これで、Pythonの基本(Part 4)についての解説が完了しました。Pythonの世界は広大で、さまざまな可能性があります。楽しんで学んでください!

コメント

このブログの人気の投稿

「8発目」 神奈川県立の出願システムのドメインmail.shutsugankanagawa.jp をdigコマンドで色々と確認してみた。

今、話題となってる、高校受験する為にネットで登録する時にgmail が届かない件  2024/01/17 16時 頃 digコマンドを利用して確認してみました。さて、どこが悪いんでしょうね。 まずはこれから % dig mail.shutsugankanagawa.jp ;; ANSWER SECTION: mail.shutsugankanagawa.jp. 122 IN A 13.113.157.93 mail.shutsugankanagawa.jp. 122 IN A 52.193.62.66 mail.shutsugankanagawa.jp. 122 IN A 52.194.140.218 今度は、txt をつけて % dig mail.shutsugankanagawa.jp txt ;; ANSWER SECTION: mail.shutsugankanagawa.jp. 300 IN TXT "v=spf1 include:amazonses.com ~all" mail.shutsugankanagawa.jp. 300 IN TXT "google-site-verification=eBRf3ipFa5PReqemKRG2zePZUOEfBc6NO5GuPisqN5A" 次はMXをつけて % dig mail.shutsugankanagawa.jp mx ;; ANSWER SECTION: mail.shutsugankanagawa.jp. 300 IN MX 10 ec2-52-193-62-66.ap-northeast-1.compute.amazonaws.com. mail.shutsugankanagawa.jp. 300 IN MX 10 ec2-52-194-140-218.ap-northeast-1.compute.amazonaws.com. mail.shutsugankanagawa.jp. 300 IN MX 10 ec2-13-113-157-93.ap-northeast-1.compute.amazonaws.com. mail.shutsugankanagawa.jp. 300 IN MX 20 feedback-s...

JavaScript入門 - パート4

JavaScript入門 - パート4 パート4では、JavaScriptの高度なトピックについて学びます。これには、関数の応用、クロージャ、そしてDOM操作が含まれます。 関数の応用 1. コールバック関数 コールバック関数は、他の関数の引数として渡され、後で実行される関数です。 function greet(name, callback) { console.log("こんにちは、" + name + "!"); callback(); } function sayGoodbye() { console.log("さようなら!"); } greet("太郎", sayGoodbye); 2. 高階関数 高階関数は、他の関数を引数として受け取るか、関数を返す関数です。 function multiplyByTwo(x) { return x * 2; } function operateOnArray(arr, func) { let result = []; for (let i = 0; i クロージャ クロージャは、外部関数から内部関数を返す関数であり、内部関数は外部関数の変数やパラメータにアクセスできます。 function counter() { let count = 0; return function() { count++; console.log(count); }; } let increment = counter(); increment(); // 1 increment(); // 2 increment(); // 3 DOM操作 DOM(Document Object Model)は、HTML文書の構造化された表現であり、JavaScriptを使って操作することができます。 3. 要素の取得 le...

Power CMSX(まとめ)

  Power CMSX(まとめ) 最近blogを書き始めましたが、案件が一区切りついたので感想含めて記載します。 初めてPower CMSXを触りました 全体的 ・悪い印象 開発環境のセットアップに手間がかかる ライセンス問題(有料 + 利用方法) 無料で利用できる範囲をもう少しひろげられないか?  →ローカルでdocker等で構築して開発する場合は、それぞれ開発者アカウント必要では? プラグインが少ない(自作する必要あり) 調べても情報少なく公式しかない サンプルがすくない ・良い印象 テンプレートはMovable Typeなので、知っていれば何でも記載できる 困った時に問い合わせ可能(●●みたいなことはできる? とか聞いてもOK) スペースの概念は良いと思う 動的出力と静的出力を選べる(ここ重要)どうでも良いページは静的にしてなど設定できる ・第一段階(導入初期) サーバーセットアップ apacheとPHP(もろもろ)いれるDBセットアップ 取りあえずサクッと動いた CMSの管理画面でTheme設定したら、Viewとかいっぱい出てきた なにも考えず、デフォ3種をポチポチしたら、テンプレートがいっぱい Theme変更しても、消えずのこったまま。 スペース、モデル、ビュー( テンプレート)の概念把握 ・第二段階(導入中期) 動的に記事データを取ってきたり、一覧表示したりは理解 条件つけて一覧表示したり <mt:> 使って 条件分岐 URLマップの概念、Assets関連などの理解 テンプレートもパーツ化して再利用 管理画面のカスタムの仕方 意外とハマった .htaccess 、一度、設定失敗して管理画面含めてアクセスできなくなりましたw ・第三段階(導入後期) PCMSのプラグイン開発やTinyプラグインの開発まで範囲を広げる どうしても、要件を実現したく力技で実装したが、件数が多いとすごく遅い箇所の改善 プラグイン(PHP) を作成して、DBで一括で取得してPHPで整形してHTML返すとか。 あと入力関連でTinyを利用するので、デザインされたCSSを反映させる為、 カスタマイズやTinyのプラグインを開発 現在に至る ・その他 開発環境を用意したとして、本番環境にデブロイする手法はなにが最適なのか? プラグイン関連はファイルのアップロードで良...