Skip to main content

ExtraFunctions

ExtraFunctions is a collection of useful Python functions designed to make common programming tasks simpler.

It includes utilities for saving data, generating random values, working with files, terminal displays, text manipulation, encryption, and more.

Installation

Install ExtraFunctions using pip:

pip install ExtraFunctions

Functions

General Utilities

  • negative(used) — Reverses strings or makes numbers negative.
  • average(numbers) — Calculates the average of a collection of numbers.
  • clamp(variable, top, bottom) — Keeps a value between two limits.
  • WaitUntil(boolean, max_frames) — Waits until a condition becomes true.
  • TimeLenFunc(func, *input) — Measures how long a function takes to run.
  • attempt(func, *inputs, times) — Attempts to run a function multiple times.

Save System

  • Save(variable, name) — Saves a variable.
  • SaveReset() — Resets saved data.
  • SaveReturn(name) — Returns a saved value.
  • DeleteSave(name) — Deletes a saved value.
  • SaveChange(variable, name) — Changes an existing saved value.
  • Exists(name) — Checks whether a saved value exists.
  • ReturnSaved() — Returns all saved data.

Random Utilities

  • RandomString(length) — Generates a random string.
  • RandomChoice(choices, amount=1) — Selects one or more unique random choices.
  • WeightedRandom(options, values) — Makes a weighted random selection.
  • PasswordGenerator(length) — Generates a secure random password.

Files and Data

  • FileExists(file) — Checks whether a file exists.
  • load(file) — Loads supported files.

Terminal Utilities

  • DrawProgressBar(percent) — Draws a terminal progress bar.
  • UpdateProgressBar(percent) — Updates the progress bar.
  • DrawLoadingSpinner() — Draws a loading spinner.
  • UpdateLoadingSpinner(rotation) — Updates the loading spinner.
  • StartCountdown(seconds) — Starts a terminal countdown.
  • UpdateCountdown(time) — Updates a countdown.
  • SlowWrite(text, speed=0.5) — Prints text gradually, like a typewriter.

Text and Encryption

  • CaesarEncrypt(text, shift) — Encrypts text using a Caesar cipher.
  • CaesarDecrypt(text, shift) — Decrypts Caesar cipher text.
  • IsPalindrome(text) — Checks whether text reads the same forwards and backwards.

Other Utilities

  • FormatTime(seconds) — Converts seconds into a readable time format.
  • RemoveDuplicates(list) — Removes duplicate items from a list.
  • PlanetInfo(planet, info=False) — Returns information about a planet.
  • DistanceTranslate(amount, from_unit, to_unit) — Converts between supported distance units.

Examples

Generate a password

from ExtraFunctions import PasswordGenerator

password = PasswordGenerator(20)

print(password)

Create a progress bar

from ExtraFunctions import DrawProgressBar, UpdateProgressBar
import time

DrawProgressBar(0)

for i in range(101):
    UpdateProgressBar(i)
    time.sleep(0.05)

print()

Slowly print text

from ExtraFunctions import SlowWrite

SlowWrite("Hello, World!", 0.1)

Random choices

from ExtraFunctions import RandomChoice

planets = ["Mercury", "Venus", "Earth", "Mars"]

print(RandomChoice(planets, 2))

Errors

ExtraFunctions includes several custom errors:

  • UknownFormatError
  • SaveError
  • InfiniteError
  • NonexistentPlanetError

Notes

ExtraFunctions is an independent Python project that is continually being expanded with new functions and utilities.

More features may be added in future updates.s

Metadata

Release files for ExtraFunctions 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ExtraFunctions 0.2.1
File Size Uploaded Provenance
extrafunctions-0.2.1.tar.gz 5.5 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for ExtraFunctions 0.2.1
File Interpreter ABI Platform
extrafunctions-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 11.4 kB

Release files / extrafunctions-0.2.1.tar.gz

Download URL extrafunctions-0.2.1.tar.gz
Size 5.5 kB
Tags Source
SHA-256 checksum
How to use checksums
f2a8267f13bc33e8a81208a4794906c9147d2b29077f5f59b73d96993f869e61
BLAKE2b-256 checksum
How to use checksums
ed09914b5dfa618428c545e2bf80bb1e6f72b47ba434c195e3d35e04074835ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.2

Release files / extrafunctions-0.2.1-py3-none-any.whl

Download URL extrafunctions-0.2.1-py3-none-any.whl
Size 5.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
94c3785620c8b78b83c031ae0c32f37d233c26b6004ffc431916714fbb035da0
BLAKE2b-256 checksum
How to use checksums
e38bc09a9e005b691d945c49c1be0e2511af2c7003c10501c025139bfd84c50f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.2

Security for ExtraFunctions 0.2.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page