Skip to main content

Collective python packages from papers

Project description

A template to structure your Python application

A python project to use as a template when developing a Python application.

In order to create a Python project with a similar structure you need to do the following:

The structure of the project should be as follows:

project
├── README.md
├── example
│   ├── __init__.py
│   ├── package_1
│   │   ├── __init__.py
│   │   ├── awesome_module.py
│   │   ├── ...
│   │   └── awesome_module_n.py
│   └── package_2
│       ├── __init__.py
│       └── module.py
├── setup.py
└── tests
    └── __init__.py

(Optional) Create a Python environment:

  • For Python3 users:
    • pip install virtualenv
    • virtualenv venv_name
    • source path/to/venv_name activate
  • For Anaconda users:
    • conda create --name conda_env
    • conda activate conda_env
    • conda install pip

Next you need to create a setup.py file in the root folder. It should be similar to the one presented below:

from distutils.core import setup
from setuptools import setup, find_packages

setup(
    name='example',
    version='0.1dev0',
    author='Author Name', 
    author_email='author_email@mail.com',
    packages=find_packages(),
    long_description=open('README.md').read()
)

You need to create an __init__.py file in the /example directory where you should import the packages (i.e. package_1, and package_2):

# example/__init__.py
from . import package_1, package_2 

After that, you need to run the setup.py as follows:

While being in the root of the folder run the following command: pip install -e .

An example.egg-info directory should now be created in the root directory:

project
├── README.md
├── example
│   ├── __init__.py
│   ├── package_1
│   │   ├── __init__.py
│   │   ├── awesome_module.py
│   │   ├── ...
│   │   └── awesome_module_n.py
│   └── package_2
│       ├── __init__.py
│       └── module.py
├── example.egg-info
│   ├── dependency_links.txt
│   ├── PKG_INFO
│   ├── SOURCES.txt
│   └── top_level.txt
├── setup.py
└── tests
    └── __init__.py

If everything when according to plan, you should be able to use the modules you developed in the package_1 from the package_2 directory likewise:

# example/package_2/module.py
from example.package_1.awesome_module import hello

Project details


Release history Release notifications | RSS feed

This version

0.1

Download files

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

Source Distribution

paper_lib_collective-0.1.tar.gz (5.6 kB view hashes)

Uploaded Source

Supported by

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