投稿

ラベル(Python3)が付いた投稿を表示しています

[Python]unittestモジュール

Pythonのunittestモジュールは、Python標準ライブラリに含まれている単体テストフレームワークです。これを使うことで、関数やクラスの動作を確認するための自動化テストを書き、実行することができます。 基本的な使い方 簡単なテストケースの例 まず、unittestモジュールをインポートして、テストケースを定義します。テストケースはunittest.TestCaseクラスを継承して作成します。 import unittest class TestClass(unittest.TestCase): def test_case1(self): self.assertEqual(1 + 1, 2) def test_case2(self): self.assertEqual(5 - 3, 2) def test_case3(self): self.assertTrue(True) def test_case4(self): self.assertFalse(False) if __name__ == '__main__': unittest.main() テストケースの実行 上記のコードを実行すると、定義されたテストケースが実行され、すべてのテストがパスするかどうかが確認されます。結果は以下のように表示されます。 $ py test.py .... ---------------------------------------------------------------------- Ran 4 tests in 0.001s OK テストケースの実行(失敗時) test_case4を self.assertFalse(True) としたとき、このテストケースは失敗し、以下のように失敗した箇所、失敗した理由などが表示されます。 $ py test.py ...F ====================================================================== FAIL: test_case4 (__main__.TestClass.tes...

[Python] コーディング規約(PEP8)、認定試験

Pythonプログラミングにおいて標準的なコーディング規約が定められているPEP8について簡単にまとめます。 PEP8のガイドラインを把握したうえでコーディングすることで、コードの可読性と一貫性を高めることができます。もし参画しているプロジェクトで特有のコーディング規約がなければ、PEP8に従いコーディングを行うとよいです。 PEP 8 コーディング規約 インデント インデントにはスペース4つを使用する。 既存のコードがタブで使用されていた場合、コードの一貫性を図るためにタブの使用も可能とする。しかしタブとスペースが混在してはいけない。 行の長さ 1行の長さは79文字までに収める。 PEP 8では、1行あたりの文字数を79文字以内にすることが推奨されています。これにはいくつかの理由があります。 可読性 : 短い行の方が読みやすく、コードの意図を理解しやすい。 端末の制約 : 狭い幅の端末やウィンドウでもコードが途切れずに表示される。 バージョン管理の差分表示 : 行が短いと、バージョン管理システムでの変更点が見やすくなる。 もし1行が79文字を超える場合は、次のように改行を使います。 # 方法1: バックスラッシュを使用 total = first_variable + second_variable + third_variable + \ fourth_variable + fifth_variable + sixth_variable # 方法2: 括弧内に改行 total = (first_variable + second_variable + third_variable + fourth_variable + fifth_variable 空白 空白の使い方を注意することで、コードが見やすくなり、他の人と共同作業する際にもスムーズに進むようになります。具体的な例を以下に示します。 代入演算子(=)、二項演算子(+、-、*、/、など)の両側にスペースを入れる x = 1 y = 2 sum = x + y カンマ(,)、コロン(:)、セミコロン(;)の後にはスペースを入れる if x == 4: print(x, y); x, y =...

[Python3]JupyterLab

イメージ
JupyterLabは、Webブラウザ上でPythonプログラムの実行や、実行結果の参照、ドキュメントの作成などが行えるインターフェースです。データ分析や、データの可視化、機械学習などで広く利用されています。 また、対応言語はPythonだけでなく、R言語やJuliaなど、データ分析に特化したプログラミング言語がサポートされています。 ここでは、このJupyterLabについて、使い方を簡単にまとめておきます。 インストール pip install jupyterlab 起動 JupyterLabの起動 起動コマンド jupyter lab 実行結果 $ jupyter lab [I 2023-10-30 23:13:45.900 ServerApp] Package jupyterlab took 0.0000s to import [I 2023-10-30 23:13:45.946 ServerApp] Package jupyter_lsp took 0.0452s to import (省略) Or copy and paste one of these URLs: http://localhost:8888/lab?token=f4b577bc69b906f303be605e5ee9ecb0350b7b5e7e285b31 http://127.0.0.1:8888/lab?token=f4b577bc69b906f303be605e5ee9ecb0350b7b5e7e285b31 起動画面 実行結果のコンソール上に表示された起動用のURLを開くと、以下のような画面が開きます。 基本的な使い方 Notebookを使う Pythonコードを実行する LuncherでNotebook > Python3をクリックすると、「Untitled.ipynb」というNotebookが開きます。ここへPythonコードを記述して実行することができます。 実行するにはコード上で「Shift+Enter」か、上段メニューの▶ボタンで実行します。 変数を展開する 前の実行結果を保持したまま、次のコードを記述して実行することができます。また、コードの最終行を変数で終わると、その変数の中身...

[Python3]データ分析 pandasライブラリを使う、認定試験

pandasは、Pythonの強みでもあるデータ分析を行うための強力なライブラリです。読み方は「パンダス」と読みます。 ここでは、pandasのセットアップから基本的な使い方をまとめていきたいと思います。 事前準備 pandasライブラリのインストール インストールコマンド pip install pandas 確認 $ pip list | grep pandas pandas 2.0.3 使い方 データの取得 まずは分析対象となるデータを取得します。ここでは前回の記事で使用したMySQLからデータ取得するコードを使用します。 https://www.s-watanabe.work/2023/06/python3wslpython3db.html sql = "select id, email, name, birthdate from users;" cursor.execute(sql) users = cursor.fetchall() DataFrameの取得 pandasによるデータ分析では、DataFrameと呼ばれる独自のデータ構造を使って分析を行います。まずは取得したデータで、DataFrameオブジェクトを生成します。 rows = pandas.DataFrame(users) # 確認 print(rows) 実行結果 python3 exec.py 0 1 2 3 0 16 member01@example.com ユーザー名_01 2001-03-31 1 17 member02@example.com ユーザー名_02 2003-04-25 2 18 member03@example.com ユーザー名_03 1985-08-01 3 19 member04@example.com ユーザー名_04 1986-06-20 4 20 member05@example.com ユーザー名_05 1998-12-13 5 21 member06@example.com ユーザー名_06 ...

[Python3]WSLにPython3実行環境を整える、サンプルコード(DB接続)、認定試験

最近仕事でPythonに触れる機会がありましたので、WSL(Ubuntu)への導入からDB接続するまでの手順をまとめておきます。 また、Pythonは初めて触ったのですが、かなりとっつきやすいのでプログラミング初心者に進められるのも分かる気がします。シンプルで短いコードで記述できて、だれが書いても似たような読みやすいコードになるのではないかと思います。 今後はPythonについての記事も書いていこうと思います。 導入 パッケージの更新 sudo apt update sudo apt upgrade -y Python3のインストール Pythonの最新バージョンは3系になります。pipはPythonのライブラリをセットアップするコマンドなので、一緒にインストールします。 sudo apt install python3 python3-pip -y sudo pip3 install pip -U 確認 python3 --version Python 3.8.10 pip3 --version pip 23.0.1 from ~/.local/lib/python3.8/site-packages/pip (python 3.8) 対話モード 対話モードで実行する python3コマンドを引数なしで実行すると、対話モードで実行することができます。ここでは1行ずつコードを実行することができるので、簡単なコードの確認に使えます。 $ python3 Python 3.8.10 (default, May 26 2023, 14:05:08) [GCC 9.4.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> print(Hello Python) File "<stdin>", line 1 print(Hello Python) ^ SyntaxError: invalid syntax >>> print(...