view python/example/find_str_format.py @ 924:fc88a12acf48 default tip

add lfs filter
author Jeff Hammel <k0scist@gmail.com>
date Wed, 04 Dec 2024 15:50:53 -0800
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()