Name | Z0Z-tools JSON |
Version |
0.9.4
JSON |
| download |
home_page | None |
Summary | Tools for audio/signal processing, data structure, function parameters, and package management. |
upload_time | 2025-02-17 12:36:17 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.10 |
license | CC-BY-NC-4.0 |
keywords |
python
development
tools
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# Z0Z_tools
A collection of tools to solve common Python development frustrations. "Z0Z_" indicates these are prototype solutions - they work, but might not be pretty.
## Tired of handling string vs boolean parameter confusion?
Add `oopsieKwargsie()` to your function: it intelligently converts string parameters to their proper boolean or None types.
## Need flexible control over parallel processing?
Add a flexible parameter to your function, and use `defineConcurrencyLimit()` to give users more control over concurrent processing by using intuitive ratios or counts:
- Use fractions (0.75 = 75% of CPUs)
- Specify exact counts (8 = use 8 CPUs)
- Use negative values (-2 = total CPUs minus 2)
## Need to validate integer inputs?
`intInnit()` rigorously validates and converts input lists to integers:
- Converts valid numeric types to integers
- Rejects non-whole numbers
- Provides clear error messages
- Made for validating user inputs
## Want to unit test the above functions in your package?
Use the pre-built test suites in `pytest_parseParameters.py` to quickly test your implementations:
```python
from Z0Z_tools.pytest_parseParameters import makeTestSuiteOopsieKwargsie
def test_a_function_with_bool():
smurfSuite = makeTestSuiteOopsieKwargsie(mySmurfyFunction)
for smurfName, smurfFunction in smurfSuite.items():
smurfFunction()
```
## Extract data as strings from simple or complex nested data structures?
Extract and standardize values from complex data structures with `stringItUp()`:
- Recursively unpack nested structures
- Convert all elements to strings
- Handle arbitrary iterables and custom objects
## Want to merge multiple dictionaries of lists?
`updateExtendPolishDictionaryLists()` can combine and clean dictionary data with optional:
- Duplicate removal
- List sorting
- Error handling for incompatible data
## "I just want to load the audio: I don't need 714 options!"
Load audio, `readAudioFile()`, and save WAV files, `writeWav()`, without the complexity:
- Automatic stereo conversion
- Sample rate control
- Multi-file batch processing, too: `loadWaveforms()`
## Want to install a package that lacks proper installation files?
If you have a Python package that doesn't have an installation file, `pipAnything()` creates a temporary setup environment to help `pip` install the unpackaged code.
```sh
python -m Z0Z_tools.pipAnything <pathPackage>
```
## Want to create relative paths between any two locations?
Convert between paths easily with `findRelativePath()`:
- Works with files or directories
- Handles paths on different branches
- Supports both string and Path-like inputs
- Returns platform-independent paths
## Installation
```sh
pip install Z0Z_tools
```
[](https://creativecommons.org/licenses/by-nc/4.0/)
Raw data
{
"_id": null,
"home_page": null,
"name": "Z0Z-tools",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "Python, development, tools",
"author": null,
"author_email": "Hunter Hogan <HunterHogan@pm.me>",
"download_url": "https://files.pythonhosted.org/packages/50/c5/0f96924c9d3303539b47cfc947491025e3752be6a076643147e973e52793/z0z_tools-0.9.4.tar.gz",
"platform": null,
"description": "# Z0Z_tools\n\nA collection of tools to solve common Python development frustrations. \"Z0Z_\" indicates these are prototype solutions - they work, but might not be pretty.\n\n## Tired of handling string vs boolean parameter confusion?\n\nAdd `oopsieKwargsie()` to your function: it intelligently converts string parameters to their proper boolean or None types.\n\n## Need flexible control over parallel processing?\n\nAdd a flexible parameter to your function, and use `defineConcurrencyLimit()` to give users more control over concurrent processing by using intuitive ratios or counts:\n\n- Use fractions (0.75 = 75% of CPUs)\n- Specify exact counts (8 = use 8 CPUs)\n- Use negative values (-2 = total CPUs minus 2)\n\n## Need to validate integer inputs?\n\n`intInnit()` rigorously validates and converts input lists to integers:\n\n- Converts valid numeric types to integers\n- Rejects non-whole numbers\n- Provides clear error messages\n- Made for validating user inputs\n\n## Want to unit test the above functions in your package?\n\nUse the pre-built test suites in `pytest_parseParameters.py` to quickly test your implementations:\n\n```python\nfrom Z0Z_tools.pytest_parseParameters import makeTestSuiteOopsieKwargsie\n\ndef test_a_function_with_bool():\n smurfSuite = makeTestSuiteOopsieKwargsie(mySmurfyFunction)\n for smurfName, smurfFunction in smurfSuite.items():\n smurfFunction()\n```\n\n## Extract data as strings from simple or complex nested data structures?\n\nExtract and standardize values from complex data structures with `stringItUp()`:\n\n- Recursively unpack nested structures\n- Convert all elements to strings\n- Handle arbitrary iterables and custom objects\n\n## Want to merge multiple dictionaries of lists?\n\n`updateExtendPolishDictionaryLists()` can combine and clean dictionary data with optional:\n\n- Duplicate removal\n- List sorting\n- Error handling for incompatible data\n\n## \"I just want to load the audio: I don't need 714 options!\"\n\nLoad audio, `readAudioFile()`, and save WAV files, `writeWav()`, without the complexity:\n\n- Automatic stereo conversion\n- Sample rate control\n- Multi-file batch processing, too: `loadWaveforms()`\n\n## Want to install a package that lacks proper installation files?\n\nIf you have a Python package that doesn't have an installation file, `pipAnything()` creates a temporary setup environment to help `pip` install the unpackaged code.\n\n```sh\npython -m Z0Z_tools.pipAnything <pathPackage>\n```\n\n## Want to create relative paths between any two locations?\n\nConvert between paths easily with `findRelativePath()`:\n\n- Works with files or directories\n- Handles paths on different branches\n- Supports both string and Path-like inputs\n- Returns platform-independent paths\n\n## Installation\n\n```sh\npip install Z0Z_tools\n```\n\n[](https://creativecommons.org/licenses/by-nc/4.0/)\n",
"bugtrack_url": null,
"license": "CC-BY-NC-4.0",
"summary": "Tools for audio/signal processing, data structure, function parameters, and package management.",
"version": "0.9.4",
"project_urls": {
"Donate": "https://www.patreon.com/integrated",
"Homepage": "https://github.com/hunterhogan/Z0Z_tools",
"Repository": "https://github.com/hunterhogan/Z0Z_tools.git"
},
"split_keywords": [
"python",
" development",
" tools"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "fadc953e49382b34ae1cca4a165647a81810abcdf49d7da7d96c3e48066ff531",
"md5": "3d841e7839d46619a567ebbb242994df",
"sha256": "263ab160e3193629a773c353ee97ed9afb824a9b73026ff493bde0a5b06fe399"
},
"downloads": -1,
"filename": "Z0Z_tools-0.9.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "3d841e7839d46619a567ebbb242994df",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 49370,
"upload_time": "2025-02-17T12:36:15",
"upload_time_iso_8601": "2025-02-17T12:36:15.312859Z",
"url": "https://files.pythonhosted.org/packages/fa/dc/953e49382b34ae1cca4a165647a81810abcdf49d7da7d96c3e48066ff531/Z0Z_tools-0.9.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "50c50f96924c9d3303539b47cfc947491025e3752be6a076643147e973e52793",
"md5": "623226f9b649a17db972b065fb075746",
"sha256": "b0493228baec6ba7006395862d69b4bdecfaa4a00ffa5cdc356919bdacc0bdc3"
},
"downloads": -1,
"filename": "z0z_tools-0.9.4.tar.gz",
"has_sig": false,
"md5_digest": "623226f9b649a17db972b065fb075746",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 44401,
"upload_time": "2025-02-17T12:36:17",
"upload_time_iso_8601": "2025-02-17T12:36:17.355333Z",
"url": "https://files.pythonhosted.org/packages/50/c5/0f96924c9d3303539b47cfc947491025e3752be6a076643147e973e52793/z0z_tools-0.9.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-02-17 12:36:17",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "hunterhogan",
"github_project": "Z0Z_tools",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "z0z-tools"
}