view python/example/find_str_format.py @ 869:ca1fb54c03ee

https://coderwall.com/p/7aymfa/please-oh-please-use-git-pull-rebase
author Jeff Hammel <k0scist@gmail.com>
date Mon, 10 Sep 2018 10:23:50 -0700
parents 8275fa887f2b
children
line wrap: on
line source

#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
find str format options
"""

import argparse
import os
import subprocess
import sys

__all__ = ['main']

def find_keys(string):
    retval = set()
    while True:
        try:
            string.format(**{i:'' for i in retval})
            return retval
        except KeyError as e:
            retval.add(e.message)


def main(args=sys.argv[1:]):

    string = ' '.join(args)
    keys = find_keys(string)
    print ('\n'.join(sorted(keys)))

if __name__ == '__main__':
    main()