Skip to main content

個人的によく使う関数、クラス、型ヒントを纏めたライブラリです。

Project description

概要

よく使う関数やクラスを纏めたライブラリです。

このライブラリは以下の環境で作成されています。 Windows10(64bit), Python3.10.8

インストール

インストール pip install otsutil

アップデート pip install -U otsutil

アンインストール pip uninstall otsutil

モジュール

以下のモジュールが存在します。

モジュール名 概要
classes よく使うクラスが定義されている
funcs よく使う関数が定義されている
types よく使う型ヒントが定義されている

classesモジュール

classesモジュールでは以下のクラスが定義されています。

クラス名 概要
LockableDict 要素の操作時にthreading.Lockを使用するdictクラス
items, keys, valuesなどのメソッドで生成したIteratorオブジェクトをサイズ変更後にnextした場合に例外が起こるのはオリジナルと同様
LockableList 要素の操作時にthreading.Lockを使用するlistクラス
ObjectSaver pickleでシリアライズ可能なオブジェクトをファイルで扱うクラス
OtsuNone Noneのような何か
Noneを返す可能性のあるdictgetするときのdefaultなどに使う
厳密にはクラスではなく__OtsuNoneTypeというシングルトンクラスのインスタンス
Timer n秒タイマー
n秒経過するまで, 今からn秒経過するまで, n秒経過したかなどを判定したり
for文で定期的に処理を割り込ませるためのメソッドなどがある

funcsモジュール

funcsモジュールでは以下の関数が定義されています。

関数名 概要
deduplicate タプルやリストから重複を取り除き、順番を保持し、元の型で返す
load_json ファイルに保存されたJSONを読み込む
openせずにファイルを渡すことができ、指定しない場合のencodingutf-8になる
read_lines ファイルを読み込み1行ずつ返すジェネレータを生成する
行右端の改行を除去し、openせずにファイルを渡すことができ、指定しない場合のencodingutf-8になる
same_path パスが同一か判定する
相対パス、絶対パスにかかわらず開いたとき同じものであればTrueを返す
save_json ファイルにJSONを保存する。
openせずにファイルを渡すことができ、指定しない場合のencodingutf-8になる
setup_path 親ディレクトリの存在を確認、生成、保証し、パスを返す
ディレクトリならば生成され、ファイルならopen(file, 'w')で生成可能な状態になる
str_to_path 文字列をPathに変換する
write_lines ファイルにlinesを1行ずつ書き出す
openせずにファイルを渡すことができ、指定しない場合のencodingutf-8になる

typesモジュール

typesモジュールでは以下の型ヒントやジェネリクスが定義されています。

名称 形式 概要
FLOAT_INT ジェネリクス floatまたはintに絞ったジェネリクス
K ジェネリクス dict型のキーを表す想定のジェネリクス
P ジェネリクス 関数の引数を表すジェネリクス
R ジェネリクス 関数の戻り値を表すジェネリクス
T ジェネリクス 型指定もなにもないジェネリクス
V ジェネリクス dict型の値、list型の値を表す想定のジェネリクス
hmsValue タイプエイリアス (時, 分, 秒)のタプル
型はそれぞれ(int, int, float)
pathLike タイプエイリアス pathlib.Pathまたはstr

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

otsutil-1.1.2.310-py3-none-any.whl (10.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page