Skip to main content
pyopt version 0.84

A module for command-line options with a pythonic, decorator-centric syntax.

The following example auto-generates help with docstrings, type casting for
arguments and enforcing argument count:

import pyopt

expose = pyopt.Exposer()

@expose.args
def regular_function(arg1:str, arg2:int):
'''Your help - the docstring'''
# bla, etc, foobar spam...
print(repr(arg1), repr(arg2))

if __name__ == "__main__":
expose.run()

There are 3 modes of operation:
1. expose.args - A decorator for positional arguments.
2. expose.kwargs - A decorator for keyword arguments.
3. expose.mixed - A decorator for keyword and positional arguments.

Currently known compromises that are open to discussion, e-mail me:
1. This module was specifically designed with python 3 in mind, certain features
can be converted to python 2.x, but the awesome ones can't.
2. Keyword command-line functions require every argument to start with a
different letter to avoid collisions.
3. Annotations aren't mandatory, I don't know if this is the right way to go,
it's an explicity vs convenience issue.
4. Booleans can't default to True. I couldn't think of a use case for this
so tell me if you did.

License: whatever, I don't mind. Google Code made me choose so I went with
the "New BSD". If somebody has a better idea, e-mail, comment or whatnot.
Hearing from whoever uses this code would be nice, but you really shouldn't
feel obliged.

Contact me at: ubershmekel at gmail

Metadata

Release files for pyopt 0.84

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

Source distribution (sdist)

Source distribution for pyopt 0.84
File Size Uploaded
pyopt-0.84.zip 10.4 kB Details

Release files / pyopt-0.84.zip

Download URL pyopt-0.84.zip
Size 10.4 kB
Tags Source
SHA-256 checksum
How to use checksums
e4230ae1924189c805551d1a1c153c608aa9600ded829d5126fd8a8274110be4
BLAKE2b-256 checksum
How to use checksums
b350b7d53d8f3a71694555672268a7ad559f2ae40bd1fc8b97e13af6604f99f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.84 This release

1 release file

0.83

1 release file

0.82

1 release file

0.77

1 release file

0.76

1 release file

0.75

1 release file

0.72

1 release file

0.71

1 release file

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