tkparams プログラム仕様

設定パラメータを管理するためのクラスを提供します。

概要:

このモジュールは、アプリケーションの設定パラメータを読み込み、保存し、 アクセスするための tkParams クラスを定義します。

詳細説明:

INIファイル形式でのパラメータの永続化、コマンドライン引数の管理、 パラメータの説明機能などをサポートします。

関連リンク:

tklib_usage (tklibの全体的な使用方法に関するドキュメントへのリンク例)

tklib.tkparams.main()[ソース]

このモジュールがスクリプトとして直接実行されたときに呼び出されるメイン関数です。

概要:

このモジュールがスクリプトとして直接実行されたときに呼び出されるメイン関数です。

詳細説明:

このモジュールはライブラリとして使用されることを意図しているため、 直接実行された場合はその旨のメッセージを表示します。

class tklib.tkparams.tkParams(parameter_file=None, app=None, **args)[ソース]

ベースクラス: tkObject

アプリケーションの設定パラメータを管理するクラスです。

このクラスは、INIファイルからのパラメータの読み込み、保存、 コマンドライン引数からのパラメータの更新、パラメータ値へのアクセス、 およびその説明の管理機能を提供します。

copy()[ソース]

現在のパラメータの新しいコピーを作成し、tkParamsオブジェクトとして返します。

概要:

現在のパラメータの新しいコピーを作成し、tkParamsオブジェクトとして返します。

詳細説明:

すべてのパラメータとその値を新しいtkParamsインスタンスにコピーします。

戻り値:
returns:

現在のパラメータを持つ新しいtkParamsオブジェクト。

rtype:

tkParams

dict()[ソース]

このオブジェクトの属性を辞書として返します。

概要:

このオブジェクトの属性を辞書として返します。

戻り値:
returns:

オブジェクトの __dict__ 属性。

rtype:

dict

get(key: str, defval=None)[ソース]

指定されたキーのパラメータ値を取得します。

概要:

指定されたキーのパラメータ値を取得します。

詳細説明:

キーが存在しない場合、指定されたデフォルト値を返します。

引数:
param key:

取得するパラメータのキー。

type key:

str

param defval:

キーが見つからなかった場合に返すデフォルト値。デフォルトはNone。

type defval:

any

戻り値:
returns:

指定されたキーのパラメータ値、またはデフォルト値。

rtype:

any

get_explanation(key: str) str[ソース]

指定されたキーのパラメータの説明を取得します。

概要:

指定されたキーのパラメータの説明を取得します。

詳細説明:

説明が見つからず、関連するアプリケーションオブジェクトが存在する場合は、 アプリケーションオブジェクトの翻訳機能(p() メソッド)を通じて 説明を処理します。

引数:
param key:

説明を取得するパラメータのキー。

type key:

str

戻り値:
returns:

パラメータの説明、または説明が存在しない場合はNone。

rtype:

str or None

get_param_dict()[ソース]

このオブジェクトのパラメータ辞書を取得します。

概要:

このオブジェクトのパラメータ辞書を取得します。

詳細説明:

これは self.__dict__ と同じです。

戻り値:
returns:

オブジェクトの __dict__ 属性。

rtype:

dict

get_path(path: str = None) str[ソース]

現在のパラメータファイルのパスを取得または設定します。

概要:

現在のパラメータファイルのパスを取得または設定します。

詳細説明:

path が指定された場合、内部のパラメータファイルパスを更新します。

引数:
param path:

設定するパラメータファイルのパス。Noneの場合、現在のパスが返されます。デフォルトはNone。

type path:

str or None

戻り値:
returns:

現在の(または更新された)パラメータファイルのパス。

rtype:

str

get_print_func(app, use_warning: bool) callable[ソース]

指定された条件に基づいて適切な出力関数を返します。

概要:

指定された条件に基づいて適切な出力関数を返します。

詳細説明:

app オブジェクトと use_warning フラグに応じて、 app.print_warning、app.print、または標準の print 関数を返します。

引数:
param app:

アプリケーションオブジェクト。存在しない場合は標準出力が使用されます。

type app:

object or None

param use_warning:

Trueの場合、app.print_warning を優先的に使用します。

type use_warning:

bool

戻り値:
returns:

出力に使用する関数。

rtype:

callable

get_string(path: str = None, section: str = None, key: str = None, def_val: str = None, is_print: bool = False)[ソース]

INIファイルから文字列型のパラメータ値を読み込みます。

概要:

INIファイルから文字列型のパラメータ値を読み込みます。

詳細説明:

指定されたパス、セクション、キーに基づいて値を読み込みます。

引数:
param path:

INIファイルのパス。Noneの場合、現在の内部パスを使用します。デフォルトはNone。

type path:

str or None

param section:

パラメータが属するセクション名。デフォルトはNone。

type section:

str or None

param key:

取得するパラメータのキー。デフォルトはNone。

type key:

str or None

param def_val:

キーが見つからなかった場合に返すデフォルト値。デフォルトはNone。

type def_val:

str or None

param is_print:

処理中にメッセージを出力するかどうか。デフォルトはFalse。

type is_print:

bool

戻り値:
returns:

指定されたキーの文字列値、またはデフォルト値、またはNone。

rtype:

str or None

keys()[ソース]

現在のパラメータ辞書のキーのリストを返します。

概要:

現在のパラメータ辞書のキーのリストを返します。

戻り値:
returns:

パラメータ辞書のすべてのキーを含む dict_keys オブジェクト。

rtype:

dict_keys

print_parameters(heading: str = '', sort_by_keys: bool = True, exclude_keys: list = [], app=None, use_warning: bool = False)[ソース]

現在のパラメータとその値を整形して出力します。

概要:

現在のパラメータとその値を整形して出力します。

詳細説明:

特定のキーを除外したり、キーでソートしたり、見出しを付けたりすることができます。

引数:
param heading:

出力の冒頭に表示する見出し文字列。デフォルトは空文字列。

type heading:

str

param sort_by_keys:

Trueの場合、キーをアルファベット順(大文字小文字を区別しない)でソートして表示します。デフォルトはTrue。

type sort_by_keys:

bool

param exclude_keys:

出力から除外するキーのリスト。デフォルトは空リスト。

type exclude_keys:

list

param app:

出力に使用するアプリケーションオブジェクト。Noneの場合、内部の _app を使用します。デフォルトはNone。

type app:

object or None

param use_warning:

Trueの場合、警告出力関数(app.print_warning)を使用します。デフォルトはFalse。

type use_warning:

bool

print_parameters_warning(heading: str = '', sort_by_keys: bool = True, app=None)[ソース]

現在のパラメータとその値を警告として出力します。

概要:

現在のパラメータとその値を警告として出力します。

詳細説明:

app オブジェクトの print_warning メソッドを使用します。

引数:
param heading:

出力の冒頭に表示する見出し文字列。デフォルトは空文字列。

type heading:

str

param sort_by_keys:

Trueの場合、キーをアルファベット順(大文字小文字を区別しない)でソートして表示します。デフォルトはTrue。

type sort_by_keys:

bool

param app:

出力に使用するアプリケーションオブジェクト。Noneの場合、内部の _app を使用します。デフォルトはNone。

type app:

object or None

printinf(app=None, use_warning: bool = False)[ソース]

現在のすべてのパラメータとその値を、オプションで説明と共に表示します。

概要:

現在のすべてのパラメータとその値を、オプションで説明と共に表示します。

引数:
param app:

出力に使用するアプリケーションオブジェクト。Noneの場合、内部の _app を使用します。デフォルトはNone。

type app:

object or None

param use_warning:

Trueの場合、警告出力関数(app.print_warning)を使用します。デフォルトはFalse。

type use_warning:

bool

read_parameters(path: str = None, section: str = None, AddSection: bool = False, ignore_keys: list = [], terminator: str = None, IsPrint: bool = True, follow_vartype: bool = True, read_inifile: bool = False)[ソース]

INIファイルからすべてのパラメータを読み込み、現在のオブジェクトに適用します。

概要:

INIファイルからすべてのパラメータを読み込み、現在のオブジェクトに適用します。

詳細説明:

読み込んだ値は、既存のパラメータの型に基づいて型変換されます。 リスト、タプル、辞書などの複合型もサポートします。

引数:
param path:

INIファイルのパス。Noneの場合、現在の内部パスを使用します。デフォルトはNone。

type path:

str or None

param section:

読み込むセクション名。Noneの場合、すべてのセクションを読み込みます。デフォルトはNone。

type section:

str or None

param AddSection:

読み込んだセクションをパラメータとして追加するかどうか。デフォルトはFalse。

type AddSection:

bool

param ignore_keys:

読み込み時に無視するキーのリスト。デフォルトは空リスト。

type ignore_keys:

list

param terminator:

値の終端を示す文字。これ以降の文字列は無視されます。デフォルトはNone。

type terminator:

str or None

param IsPrint:

処理中にメッセージを出力するかどうか。デフォルトはTrue。

type IsPrint:

bool

param follow_vartype:

Trueの場合、既存のパラメータの型に合わせて読み込んだ値を変換します。Falseの場合、pconv を使用して変換します。デフォルトはTrue。

type follow_vartype:

bool

param read_inifile:

Trueの場合、INIファイル自体に関する情報を読み込みます。デフォルトはFalse。

type read_inifile:

bool

戻り値:
returns:

読み込まれたパラメータを含む辞書、またはINIファイルが存在しない場合はNone。

rtype:

dict or None

save_parameters(path: str = None, section: str = 'Preferences', keys: list = None, exclude_keys: list = [], otherparams: dict = None, sort_by_keys: bool = True, other_section: str = 'OtherParameters', update_commandline: bool = True, save_commandline: bool = False, save_inifile: bool = False, IsPrint: bool = True)[ソース]

現在のすべてのパラメータをINIファイルに保存します。

概要:

現在のすべてのパラメータをINIファイルに保存します。

詳細説明:

パラメータはセクションにまとめられ、キーと値のペアとして保存されます。 リストや辞書のような複合型のパラメータも適切に保存されます。

引数:
param path:

INIファイルのパス。Noneの場合、現在の内部パスを使用します。デフォルトはNone。

type path:

str or None

param section:

主要なパラメータを保存するセクション名。デフォルトは'Preferences'。

type section:

str

param keys:

保存するパラメータのキーのリスト。Noneの場合、すべてのパラメータが保存されます。デフォルトはNone。

type keys:

list or None

param exclude_keys:

保存から除外するキーのリスト。デフォルトは空リスト。

type exclude_keys:

list

param otherparams:

別のセクションに保存する追加のパラメータ辞書。デフォルトはNone。

type otherparams:

dict or None

param sort_by_keys:

Trueの場合、キーをアルファベット順(大文字小文字を区別しない)でソートして保存します。デフォルトはTrue。

type sort_by_keys:

bool

param other_section:

otherparams を保存するセクション名。デフォルトは'OtherParameters'。

type other_section:

str

param update_commandline:

Trueの場合、現在のコマンドライン引数を commandline パラメータとして更新します。デフォルトはTrue。

type update_commandline:

bool

param save_commandline:

Trueの場合、commandline パラメータも保存します。デフォルトはFalse。

type save_commandline:

bool

param save_inifile:

Trueの場合、inifile パラメータも保存します。デフォルトはFalse。

type save_inifile:

bool

param IsPrint:

処理中にメッセージを出力するかどうか。デフォルトはTrue。

type IsPrint:

bool

戻り値:
returns:

保存が成功した場合はTrue、失敗した場合はFalse。

rtype:

bool

save_parameters_by_keys(prmfile: str, heading: str = None, section: str = None, keys: list = None, exclude_keys: list = [], save_commandline: bool = False)[ソース]

指定されたキーのパラメータのみをINIファイルに保存します。

概要:

指定されたキーのパラメータのみをINIファイルに保存します。

詳細説明:

このメソッドは、save_parameters メソッドから特定のキーセットを 保存するために呼び出されるヘルパーメソッドです。 keys 引数がNoneの場合、params.keys() が使用されますが、 params はこのメソッドのスコープでは定義されていません。 これは通常、呼び出し元の save_parameters メソッドから渡されるか、 または self.keys() を意図している可能性があります。

引数:
param prmfile:

パラメータを保存するINIファイルのパス。

type prmfile:

str

param heading:

ファイル内のセクションの前に挿入される見出し(使用されていない可能性が高い)。デフォルトはNone。

type heading:

str or None

param section:

パラメータを保存するセクション名。デフォルトはNone。

type section:

str or None

param keys:

保存するパラメータのキーのリスト。Noneの場合、params.keys() が使用されます。デフォルトはNone。

type keys:

list or None

param exclude_keys:

保存から除外するキーのリスト。デフォルトは空リスト。

type exclude_keys:

list

param save_commandline:

コマンドライン引数を保存するかどうか。デフォルトはFalse。

type save_commandline:

bool

戻り値:
returns:

明示的な戻り値はありません。tkIniFile.write_string の結果が内部的に使われます。

rtype:

None

set(key: str, val, explanation: str = None)[ソース]

指定されたキーのパラメータ値を設定します。

概要:

指定されたキーのパラメータ値を設定します。

詳細説明:

オプションで、そのパラメータの説明を設定することもできます。

引数:
param key:

設定するパラメータのキー。

type key:

str

param val:

設定するパラメータの値。

type val:

any

param explanation:

パラメータの説明。デフォルトはNone。

type explanation:

str or None

戻り値:
returns:

設定された値。

rtype:

any

set_attr(key: str, val, explanation: str = None)[ソース]

指定されたキーのパラメータ値を設定します。(set メソッドのエイリアス)

概要:

指定されたキーのパラメータ値を設定します。(set メソッドのエイリアス)

詳細説明:

オプションで、そのパラメータの説明を設定することもできます。

引数:
param key:

設定するパラメータのキー。

type key:

str

param val:

設定するパラメータの値。

type val:

any

param explanation:

パラメータの説明。デフォルトはNone。

type explanation:

str or None

戻り値:
returns:

設定された値。

rtype:

any

write_string(path: str = None, section: str = None, key: str = None, value=None, outfile=None, is_print: bool = False)[ソース]

INIファイルに文字列型のパラメータ値を書き込みます。

概要:

INIファイルに文字列型のパラメータ値を書き込みます。

詳細説明:

指定されたパス、セクション、キー、値に基づいてファイルを更新します。 このメソッドの実装は、おそらく tkIniFile.write_string を呼び出す意図であったと考えられますが、 現在のコードはグローバルスコープの write_string を呼び出しています。

引数:
param path:

INIファイルのパス。Noneの場合、現在の内部パスを使用します。デフォルトはNone。

type path:

str or None

param section:

パラメータが属するセクション名。デフォルトはNone。

type section:

str or None

param key:

書き込むパラメータのキー。デフォルトはNone。

type key:

str or None

param value:

書き込むパラメータの値。str() で文字列に変換されます。デフォルトはNone。

type value:

any

param outfile:

出力ファイルオブジェクト(使用されていない可能性が高い)。デフォルトはNone。

type outfile:

any

param is_print:

処理中にメッセージを出力するかどうか。デフォルトはFalse。

type is_print:

bool

戻り値:
returns:

書き込みが成功した場合はTrue、失敗した場合はFalse。tkIniFileのインスタンス化に失敗した場合はNone。

rtype:

bool or None