Home >Backend Development >Python Tutorial >How to build and deploy a Python library

How to build and deploy a Python library

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2025-01-22 00:17:14125browse

In software development, many projects involve repetitive tasks using identical code and logic. Programmers constantly rewrite this code, creating inefficiencies. Examples include email validation or random string generation.

A solution is to package this code into reusable libraries. These libraries are installed and used across projects, eliminating redundant coding. Most are open-source and freely available.

This is standard practice in languages like Python and JavaScript. This tutorial details building and deploying a Python library to PyPI, the official Python package repository.

Project Overview

This tutorial guides you through creating and deploying an open-source Python library that interacts with a REST API.

The Python Library

The library will wrap the Abstract API's Exchange Rates REST API. This API offers three endpoints:

  • /live: Retrieves live exchange rates.
  • /convert: Converts amounts between currencies (e.g., 5 USD to GBP).
  • /historical: Retrieves historical exchange rates for a specified period.

This library simplifies API interaction for developers.

Project Requirements

This tutorial assumes Python coding proficiency, including object-oriented programming (OOP) and function usage. Familiarity with Git, GitHub repositories, and project pushes is also necessary.

Tools and Packages

You'll need:

  • Python: Interpreter (>=3.9).
  • Requests: For making HTTP requests.
  • Abstract API account: To obtain an API key (instructions provided).
  • Dotenv: For managing environment variables.
  • Poetry: A Python dependency management and packaging tool.

Creating the Project

  1. Create a project directory:

    <code class="language-bash">mkdir exchangeLibrary</code>
  2. Install virtualenv (if not already installed):

    <code class="language-bash">pip install virtualenv</code>
  3. Navigate to the project directory:

    <code class="language-bash">cd exchangeLibrary</code>
  4. Create and activate a virtual environment:

    <code class="language-bash">virtualenv env</code>

    Activate (Windows): .envScriptsactivate Activate (Linux/macOS): source env/bin/activate

  5. Install required packages:

    <code class="language-bash">pip install requests poetry dotenv</code>
  6. Open the project in a code editor (PyCharm/VS Code).

Setting Up Project Resources

  1. Create the src directory: Inside, create exchange_python containing __init__.py and exchange.py. Your structure should resemble the image below:

    How to build and deploy a Python library

  2. Create test.py for unit testing.

  3. Obtain your Abstract API key: a. Sign up on Abstract API. How to build and deploy a Python library b. Log in. c. Navigate to the Exchange Rates API. How to build and deploy a Python library d. Obtain your Primary key. How to build and deploy a Python library

  4. Create a .env file: Add your API key:

    <code class="language-bash">mkdir exchangeLibrary</code>

    Your structure should now look like this: How to build and deploy a Python library

Building the API Wrapper (exchange.py)

<code class="language-bash">pip install virtualenv</code>

(The live, historical, and convert methods remain as described in the original input.)

Testing the API Wrapper (test.py)

  1. __init__.py:

    <code class="language-bash">cd exchangeLibrary</code>
  2. test.py:

    <code class="language-bash">virtualenv env</code>
  3. Run the tests: You should see a successful test result. How to build and deploy a Python library

Deploying the Project

  1. Create a .gitignore file: Add env, .env.

  2. Create a README.md file.

  3. Create pyproject.toml:

    <code class="language-bash">pip install requests poetry dotenv</code>
  4. Create a GitHub repository.

  5. Initialize Git: git init

  6. Add remote: git remote add origin <your github repo>

  7. Update pyproject.toml with your GitHub repo URL.

  8. Push to GitHub.

Deploying to PyPI

  1. Create a PyPI account and verify your email.
  2. Set up 2FA. How to build and deploy a Python library
  3. Generate a recovery code. How to build and deploy a Python library
  4. Use an authenticator app to scan the QR code. How to build and deploy a Python library
  5. Get your API token. How to build and deploy a Python library
  6. Build the package: poetry build
  7. Set the PyPI token: poetry config pypi-token.pypi <your-api-token>
  8. Publish: poetry publish

Project Maintenance

After updates, push changes to GitHub, build (poetry build), and republish (poetry publish), updating the version in pyproject.toml as needed.

Installation and Usage

<code class="language-bash">mkdir exchangeLibrary</code>
<code class="language-bash">pip install virtualenv</code>

Conclusion

This tutorial covered building and deploying a Python library to PyPI, including updates and republishing. Your contribution to the open-source community helps improve Python development.

The above is the detailed content of How to build and deploy a Python library. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn