Utilities to manage Arrays
Project description
ka_uts_arr
Overview
Utilities to manage Arrays
Installation
Package ka_uts_array can be installed from PyPI or Anaconda.
To install with pip:
$ python -m pip install ka_uts_arr
To install with conda:
$ conda install -c conda-forge ka_uts_arr
Package logging
(c.f.: Appendix: Package Logging)
Package files
Classification
The Files of Package ka_uts_arr could be classified into the follwing file types (c.f.: Appendix: Python Terminology):
Special files
py.typed
Special modules
__init__.py
__version__.py
Modules
Modules for dictionaries
dic.py
Modules for dictionaries of arrays
doaod.py
doa.py
Modules for dictionaries of callables
doc.py*
Modules for dictionaries of dataframes
dopddf.py
Package Modules
Overview
The Modules of Package ka_uts_arr could be classified into the follwing module types:
Modules for arrays
Modules for arrays of arrays
Modules for arrays of basic objects
Modules for arrays
The Module type Modules for arrays contains only the module arr.py.
Module: arr.py
The Module arr.py contains only the static class Arr.
Class: Arr
The Class Arr contains the following methods:
Arr Methods
Arr methods Name
Short description
append
Append item to the array
append_unique
Append item to the array if the item is not in the array.
apply_function
Apply function with the keyword arguments to all non empty array elements.
apply_replace
Replace source by target to all array elements.
apply_str
Apply function str to all non empty array elements.
encode
Join array elements with blank separator and encode result string.
ex_intersection
Intersection of first array with second array.
extend
Extend first array with second array.
get_key_value
Get next array item value without line feed for the given index or the given default value if the item value is identical to the given value without line feeds.
get_item
Extend array of dicts. with non empty dict.
get_text
Extend array of dicts. with non empty dict.
get_text_spli
Extend array of dicts. with non empty dict.
intersection
Extend array of dicts. with non empty dict.
is_empty
Extend array of dicts. with non empty dict.
is_not_empty
Extend array of dicts. with non empty dict.
join_not_none
Extend array of dicts. with non empty dict.
length
Extend array of dicts. with non empty dict.
merge
Extend array of dicts. with non empty dict.
sh_dic_from_keys_values
Extend array of dicts. with non empty dict.
sh_dic_zip
Join elements of array of dicts.
sh_item
Show True if an element exists in the array
sh_item_if
Show True if an element exists in the array
sh_item_lower
Show True if an element exists in the array
sh_item_str
Show True if an element exists in the array
sh_item0
Deduplicate array of dicts.
sh_item0_if
Deduplicate array of dicts.
sh_subarray
Deduplicate array of dicts.
to_dic
Show arr. of arrays created from arr. of dict. by using any key- and all value-arrays
yield_items
Convert array of dictionaries to array of arrays controlled by key- and value-switch.
Modules for array of arrays
The Module type Modules for array of arrays contains only the module aoa.py.
Module: aoa.py
The Module aoa.py contains only the static class AoA.
aoa.py Class: AoA
The static Class AoA contains the subsequent methods.
AoA Methods
AoA Methods Name
Short description
concatinate
Concatinate all arrays of array of arrays
csv_writerows
Write array of arrays to csv file
nvl
Replace empty array of arrays
to_aod
Convert array of arrays to array of dictionaries using an array of keys
to_arr_from_2cols
Convert array of arrays to array using a 2-dimensional index array
to_doa_from_2cols
Convert array of arrays to dictionary of arrays using a 2-dimensionl index array
to_dic_from_2cols
Convert array of arrays to dictionary by using a 2-dimensional index array
AoA Method: concatinate
Description
Concatinate all arrays of array of arrays.
Parameter
Parameter of: AoA Method: concatinate Name
Type
Default
Description
aoa
TyAoA
Array of arrays
Return Value
Return Value of: AoA Method: concatinate Name
Type
Description
arr_new
TyArr
new array
AoA Method: csv_writerows
Description
Write Array of Arrays to Csv file defined by the path string using the function “writerows” of module “csv”.
Parameter
Parameter of: AoA Method: csv_writerows Name
Type
Description
aoa
TyAoA
Array of arrays
path
TyPath
Path string
kwargs
TyDic
Keyword aruments
Return Value
Return Value of: AoA Method: csv_writerows Name
Type
Description
None
AoA Method: nvl
Description
Return the empty array if the Array of Arrays is None.
Parameter
Parameter of: AoA Method nvl Name
Type
Default
Description
aoa
TyAoA
Array of arrays
Return Value
Return Value of: AoA Method: nvl Name
Type
Description
aoa_new
TyAoA
new Array of arrays
AoA Method: to_aod
Description
Convert array of arrays to array of Dictionaries.
Parameter
Parameter of: AoA Method: to_aod Name
Type
Default
Description
aoa
TyAoA
Array of arrays
keys
TyArr
Array of keys
Return Value
Return Value of: AoA Method: to_aod Name
Type
Description
aod
TyAoD
array of dictionaries
AoA Method: to_arr_from_2cols
Description
Convert Array of Arrays to unique array with distinct elements by selecting 2 columns of each Array as elements of the new array using a 2-dimensional index-array.
Parameter
Parameter of: AoA Method: to_arr_from_2cols Name
Type
Default
Description
aoa
TyAoA
Array of arrays
a_ix
TyAoI
Array of integer
Return Value
Return Value of: AoA Method: to_arr_from_2cols Name
Type
Description
arr
TyArr
Array
AoA Method: to_doa_from_2cols
Description
Convert array of arrays to dictionary of unique arrays (array with distinct elements)
Select 2 columns of each array as key-, value-candidates of the new dictionary using a 2-dimensional index-array.
If the new key exists then the new value extends the key value as unique array,
- # otherwise
the new value is assigned as unique array to the key.
Parameter
Parameter of: AoA Method: to_doa_from_2cols Name
Type
Default
Description
aoa
TyAoA
Array of arrays
a_ix
TyAoI
Array of integer
Return Value
Return Value of: AoA Method: to_doa_from_2cols Name
Type
Description
doa
TyDoA
Dictionry of arrays
AoA Method: to_dic_from_2cols
Description
Convert array of arrays to dictionary by selecting 2 columns of each array as key-, value-candidates of the new dictionary if the key is not none using a 2-dimensional index-array.
Parameter
Parameter of: AoA Method: to_dic_from_2cols Name
Type
Default
Description
aoa
TyAoA
Array of arrays
a_ix
TyAoI
Array of integer
Return Value
Return Value of: AoA Method: to_dic_from_2col* Name
Type
Description
dic
TyDic
Dictionary
Modules for array of objects
Modules-for-array-of-dictionaries Name
Description
aoo.py
Array of objects
Module: aoo.py
The Module aoo.py contains the single static class AoO;
aoo.py Class: AoO
Methods
AoO Methods Name
short Description
to_unique
Concatinate array arrays
AoO Method: to_unique
Deduplicate array of objects
Parameter
Parameter of: AoO Method: to_unique Name
Type
Description
aoo
TyAoO
Array of objects
Return Value
Return Value of: AoO Method: to_unique Name
Type
Description
aoo_new
TyAoO
New array of objects
Module: aos.py
Classes
The Module aos.py contains the single static class AoS;
Class: AoS
AoS Methods
AoS Methods Name
short Description
nvl
Replace empty array of strings
sh_a_date
Convert array of strings to array of dates
to_lower
Convert array of strings to array of lowered strings.
to_unique
Deduplicate array of arrays
to_unique_lower
Convert array of strings to deduplicted array of lowered strings.
to_unique_lower_invariant
Convert array of arrays to array of arrays
Method: AoS.to_unique
Parameter
Parameter of: AoS Method: to_unique Name
Type
Default
Description
aoo
TyAoO
array of objects
Return Value
Return Value of: AoS Method: to_unique Name
Type
Description
aoo_new
TyAoO
new array of objects
Appendix
Package Logging
Description
The Standard or user specifig logging is carried out by the log.py module of the logging package ka_uts_log using the standard- or user-configuration files in the logging package configuration directory:
<logging package directory>/cfg/ka_std_log.yml,
<logging package directory>/cfg/ka_usr_log.yml.
The Logging configuration of the logging package could be overriden by yaml files with the same names in the application package- or application data-configuration directories:
<application package directory>/cfg
<application data directory>/cfg.
Log message types
Logging defines log file path names for the following log message types: .
debug
info
warning
error
critical
Log types and Log directories
Single or multiple Application log directories can be used for each message type:
Log types and directoriesg Log type
Log directory
long
short
multiple
single
debug
dbqs
dbqs
logs
info
infs
infs
logs
warning
wrns
wrns
logs
error
errs
errs
logs
critical
crts
crts
logs
Application parameter for logging
Application parameter used in log naming Name
Decription
Values
Example
dir_dat
Application data directory
/otev/data
tenant
Application tenant name
UMH
package
Application package name
otev_xls_srr
cmd
Application command
evupreg
pid
Process ID
681025
log_ts_type
Timestamp type used in logging files|ts, dt
ts, dt’
ts
log_sw_single_dir
Enable single log directory or multiple log directories
True, False
True
Log files naming
Naming Conventions
Naming conventions for logging file paths Type
Directory
File
debug
/<dir_dat>/<tenant>/RUN/<package>/<cmd>/<Log directory>
<Log type>_<ts>_<pid>.log
info
/<dir_dat>/<tenant>/RUN/<package>/<cmd>/<Log directory>
<Log type>_<ts>_<pid>.log
warning
/<dir_dat>/<tenant>/RUN/<package>/<cmd>/<Log directory>
<Log type>_<ts>_<pid>.log
error
/<dir_dat>/<tenant>/RUN/<package>/<cmd>/<Log directory>
<Log type>_<ts>_<pid>.log
critical
/<dir_dat>/<tenant>/RUN/<package>/<cmd>/<Log directory>
<Log type>_<ts>_<pid>.log
Naming Examples
Naming examples for logging file paths Type
Directory
File
debug
/data/otev/umh/RUN/otev_xls_srr/evupreg/logs
debs_1737118199_9470.log
info
/data/otev/umh/RUN/otev_xls_srr/evupreg/logs
infs_1737118199_9470.log
warning
/data/otev/umh/RUN/otev_xls_srr/evupreg/logs
wrns_1737118199_9470.log
error
/data/otev/umh/RUN/otev_xls_srr/evupreg/logs
errs_1737118199_9470.log
critical
/data/otev/umh/RUN/otev_xls_srr/evupreg/logs
crts_1737118199_9470.log
Python Terminology
Python Packages
Overview
Python Packages Overview Name
Definition
Python package
Python packages are directories that contains the special module __init__.py and other modules, packages files or directories.
Python sub-package
Python sub-packages are python packages which are contained in another pyhon package.
Python package sub-directory
directory contained in a python package.
Python package special sub-directory
Python package sub-directories with a special meaning like data or cfg
Examples
Python Package sub-directory-Examples Name
Description
bin
Directory for package scripts.
cfg
Directory for package configuration files.
data
Directory for package data files.
service
Directory for systemd service scripts.
Python package files
Overview
Python package overview files Name
Definition
Python package files
Files within a python package.
Special python package files
Package files which are not modules and used as python and used as python marker files like __init__.py.
Python package module
Files with suffix .py; they could be empty or contain python code; other modules can be imported into a module.
Special python package module
Modules like __init__.py or main.py with special names and functionality.
Examples
Python package examples files Name
Type
Description
py.typed
Type checking marker file
The py.typed file is a marker file used in Python packages to indicate that the package supports type checking. This is a part of the PEP 561 standard, which provides a standardized way to package and distribute type information in Python.
__init__.py
Package directory marker file
The dunder (double underscore) module __init__.py is used to execute initialisation code or mark the directory it contains as a package. The Module enforces explicit imports and thus clear namespace use and call them with the dot notation.
__main__.py
entry point for the package
The dunder module __main__.py serves as an entry point for the package. The module is executed when the package is called by the interpreter with the command python -m <package name>.
__version__.py
Version file
The dunder module __version__.py consist of assignment statements used in Versioning.
Python methods
Overview
Python methods overview Name
Description
Python method
Python functions defined in python modules.
Special python method
Python functions with special names and functionalities.
Python class
Classes defined in python modules.
Python class method
Python methods defined in python classes
Examples
Python methods examples Name
Type
Description
__init__
class object constructor method
The special method __init__ is called when an instance (object) of a class is created; instance attributes can be defined and initalized in the method.
Table of Contents
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ka_uts_arr-4.0.5.250525.tar.gz.
File metadata
- Download URL: ka_uts_arr-4.0.5.250525.tar.gz
- Upload date:
- Size: 71.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bfe04549a59ab29eacbe8dc30dd022bcafe08eb7207fa1d95fa813ec2c0230c7
|
|
| MD5 |
0592861f4c31eccb28106da60e3ca749
|
|
| BLAKE2b-256 |
c3edb0bef48bae91422b1eba0006fa67c01f41b9f28fdbd24b82354e466389de
|
File details
Details for the file ka_uts_arr-4.0.5.250525-py3-none-any.whl.
File metadata
- Download URL: ka_uts_arr-4.0.5.250525-py3-none-any.whl
- Upload date:
- Size: 13.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
079f162ea9823ed818d58907cc6a9c17ac3762de1d33751ebd763a102205e6cb
|
|
| MD5 |
bdaebc78e08e34e69635949666c34230
|
|
| BLAKE2b-256 |
a56434d1ed26701666c2b3d6484d294836ae3b22a0c9f02b1536d9ac64e0886b
|