Skip to main content

No project description provided

Project description

classFunctions

A few simple functions that I use for teaching and demonstrations. Some of them are quite useful beyond those settings.

There are also instructions for publishing your own functions to PyPI.org so that you can easily use them on multiple computers and share them with others.

Publish to PyPI

First, run the terminal command if you don't already have these packages installed.

pip install setuptools wheel twine

In addition to the .py file that contains the functions, you will want to create other files with the file structure shown below, but using the folder and function names that are unique to your package.

File structure

class_functions/ class_functions/ init.py main.py setup.py README.md requirements.txt

init.py

from .main import function1, function2

main.py

This file contains the code for the class_functions package.

setup.py

from setuptools import setup, find_packages

# For using the README.md file as the project description
with open("README.md", "r") as f:
    description = f.read()

setup(
    name="class_functions",
    version="0.2.0", # Make sure to update this and the location of the whl file for each modification
    packages=find_packages(),
    install_requires=["pandas", "matplotlib", "seaborn"],
    # These next two lines are also needed to turn the README.md file into the project description
    long_description=description,
    long_description_content_type="text/markdown",
)

README.md

This is the README.md file.

requirements.txt

setuptools wheel twine

Create the distribution and whl files

Run the following terminal command in the folder where setup.py is located:

python setup.py sdist bdist_wheel

Test locally

You can install this on your computer where your other Python libraries are located using the following terminal command from the folder where the setup.py file is located:

pip install dist/class_functions-0.1-py3-none-any.whl

If you need to reinstall it, run it with --force-reinstall to force installation of the whl file.

You can now run the terminal command pip list to see the package listed with the others on your computer. You can also try using functions in a new IPYNB or PY file just like any other package.

Upload to PyPI

First create an account on PyPI.org and create an API token. It's free to do so.

Then upload it using the following terminal command from the same folder as your setup.py file:

twine upload dist/*

Be prepared to enter your API token. Alternatively, you can set environment variables so that they can be accessed as part of a workflow that does not need manual intervention by running the following terminal commands: export TWINE_USERNAME=__token__ export TWINE_PASSWORD=[api_token]

Once It is uploaded, anyone can download and install the package using the terminal command:

pip install classFunctions

Hattip

Thanks to pixegami for the wonderful video detailing how to do this.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

class_functions-0.2.1.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

class_functions-0.2.1-py3-none-any.whl (4.5 kB view details)

Uploaded Python 3

File details

Details for the file class_functions-0.2.1.tar.gz.

File metadata

  • Download URL: class_functions-0.2.1.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.0

File hashes

Hashes for class_functions-0.2.1.tar.gz
Algorithm Hash digest
SHA256 d38178f86a675b53ba2a332a6137d3eaeb1e6f0ce3a9487ca9e76082708ae24e
MD5 20f371e59ad01c48bc2f99962ff5d374
BLAKE2b-256 4baed3f8fb498e5250c380e95611635df0ca0542e08d196ef30460bb48d0065a

See more details on using hashes here.

File details

Details for the file class_functions-0.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for class_functions-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ef41a75d29df6d6659494cb339e790afa7f5ca6d23d15a49b85c8b12e4296b52
MD5 893249ce31d1ab9fa1b19263d796c07c
BLAKE2b-256 e7a2fb7f36f97b9a0abf032ca8f9d4f79df7b59f9aeda38c5223bfd43886debc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page