2016-10-31 11:04:28 -04:00
2012-05-09 21:36:56 +05:30
2012-08-20 12:09:24 +10:00
2012-08-20 12:09:24 +10:00
2012-07-28 20:21:03 +10:00
2012-05-08 01:27:10 -04:00
2016-10-31 14:20:21 +00:00
2012-08-20 12:09:24 +10:00

args
====

Argument Parsing for Humans.


Usage
-----

Here's an example application::

    import args

    print 'Arguments passed in: ' + str(args.all)
    print 'Flags detected: ' + str(args.flags)
    print 'Files detected: ' + str(args.files)
    print 'NOT files detected: ' + str(args.not_files)
    print 'Grouped Arguments: ' + str(args.grouped)
    print 'Assignments detected: ' + str(args.assignments)

No arguments::

    $ tool
    Arguments passed in: []
    Flags detected: <args []>
    Files detected: []
    NOT files detected: <args []>
    Grouped Arguments: OrderedDict([('_', <args []>)])
    Assignments detected: OrderedDict()

A few arguments::

    $ tool -s yes no --number=one --letter a b c --number=two
    Arguments passed in: ['-s', 'yes', 'no', '--number=one', '--letter', 'a', 'b', 'c', '--number=two']
    Flags detected: <args ['-s', '--number=one', '--letter', '--number=two']>
    Files detected: []
    NOT files detected: <args ['-s', 'yes', 'no', '--number=one', '--letter', 'a', 'b', 'c', '--number=two']>
    Grouped Arguments: OrderedDict([('_', <args []>), ('-s', <args ['yes', 'no']>), ('--number=one', <args []>), ('--letter', <args ['a', 'b', 'c']>), ('--number=two', <args []>)])
    Assignments detected: OrderedDict([('--number', <args ['one', 'two']>)])

A few expanded file arguments::

    $ tool *.py
    Arguments passed in: ['args.py', 'setup.py', 'tests.py']
    Flags detected: <args []>
    Files detected: ['args.py', 'setup.py', 'tests.py']
    NOT files detected: <args []>
    Grouped Arguments: OrderedDict([('_', <args ['args.py', 'setup.py', 'tests.py']>)])
    Assignments detected: OrderedDict()

A few non-expanded file arguments::

    $ tool '*.py'
    Arguments passed in: ['*.py']
    Flags detected: <args []>
    Files detected: ['args.py', 'setup.py', 'tests.py']
    NOT files detected: <args []>
    Grouped Arguments: OrderedDict([('_', <args ['*.py']>)])
    Assignments detected: OrderedDict()

A few mixed files/flags/arguments::

    Arguments passed in: ['*.py', '--letter', 'a', 'b', 'c', '-s', '/home/example/.example', '--number=one', '--number=two']
    Flags detected: <args ['--letter', '-s', '--number=one', '--number=two']>
    Files detected: ['setup.py', 'args.py', 'tool.py', 'tests.py', '/home/example/.example/two', '/home/example/.example/one']
    NOT files detected: <args ['--letter', 'a', 'b', 'c', '-s', '--number=one', '--number=two']>
    Grouped Arguments: OrderedDict([('_', <args ['*.py']>), ('--letter', <args ['a', 'b', 'c']>), ('-s', <args ['/home/example/.example']>), ('--number=one', <args []>), ('--number=two', <args []>)])
    Assignments detected: OrderedDict([('--number', <args ['one', 'two']>)])


Installation
------------

Installation is simple with pip::

    $ pip install args
S
Description
No description provided
Readme BSD-2-Clause 66 KiB
Languages
Python 100%