My tools of the trade for python programming.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

23 lines
477 B

# -*- python -*-
#
# $Id: debugging.py,v 1.1 2011-08-31 18:25:07 wirawan Exp $
#
# Created: 20100909
# Wirawan Purwanto
#
# Debugging tools for python
#
import re
def fmtstr_find_missing_arguments(fmtstr, args):
"""Finds what named arguments are not supplied."""
missing = {}
for kw1 in re.findall("%\([^)]+\)", fmtstr):
kw = kw1[2:-1]
if kw not in args:
missing[kw] = missing.get(kw,0) + 1
missing2 = missing.keys()
missing2.sort()
return missing2