要素数が確定されたシーケンスの途中で処理を挟むタイミングの判定を補助します。
Project description
NotificationFrequency
要素数が確定されたシーケンスの途中で処理を挟むタイミングの判定を補助します。
使い方
n回毎
あるいはn%毎
など、頻度を指定してインスタンスnf
を生成します。nf.length
に管理するシーケンスの要素数を与えます。enumerate
付きのfor文
などで(通知を行うか否か(bool)
,進捗率(int)
)を取得できます。
from otsunotificationfrequency import NotificationFrequency
# 2212個の要素を持つリストで実行する例
data = [x * 2 for x in range(2212)]
length = len(data)
# 25%毎に表示を行う
nf25per = NotificationFrequency('25%')
nf25per.set_length(length)
# 20個毎に表示を行う
# nf20 = NotificationFrequency(20)
# nf20.length = length
for i, d in enumerate(data):
i += 1
sa, per = nf25per.check_and_get_percentage(i)
# sa, per = nf20(i)
if sa:
print(f'{d}: {per}% ({i}/{length})')
25%
毎に表示する例
1104: 25% (553/2212)
2210: 50% (1106/2212)
3316: 75% (1659/2212)
4422: 100% (2212/2212)
20個
毎に表示する例
38: 0% (20/2212)
78: 1% (40/2212)
118: 2% (60/2212)
158: 3% (80/2212)
198: 4% (100/2212)
238: 5% (120/2212)
278: 6% (140/2212)
318: 7% (160/2212)
358: 8% (180/2212)
398: 9% (200/2212)
438: 9% (220/2212)
...
4158: 94% (2080/2212)
4198: 94% (2100/2212)
4238: 95% (2120/2212)
4278: 96% (2140/2212)
4318: 97% (2160/2212)
4358: 98% (2180/2212)
4398: 99% (2200/2212)
4422: 100% (2212/2212)
otsunotificationfrequency.validatorモジュール
otsuvalidator
ライブラリがインストールされていない場合インポートできず、ImportError
が発生します。
otsucfgmng
などでバリデータやコンバータが必要な場合に利用してください。
NotificationFrequency
を使用するだけの場合、このモジュールは何の機能も持ちません。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for otsunotificationfrequency-1.0.4.310.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 883c331dd900c921f91a9d86b41c664ff4e00ea19656d60e383950da2d932d44 |
|
MD5 | d5ad630336488691fdaf5466f4b4851c |
|
BLAKE2b-256 | 94b83d24459ff6d4cedf115ed0a0869654406948518c589bb198a802ffe5ee21 |
Close
Hashes for otsunotificationfrequency-1.0.4.310-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2c8e312705a73e390bb0ee8ed2c536af329bf3d96576b44b3d26d2383029e00d |
|
MD5 | 37296cc969f4dab099d869c1180f8200 |
|
BLAKE2b-256 | 678aa7619d448ed15e43c0e7d5f4c8bc77bcca9cece4372d5a4941486e7fb142 |