i05nagai/mafipy

View on GitHub
mafipy/function/error.py

Summary

Maintainability
B
4 hrs
Test Coverage
#!/bin/python
# -*- coding: utf-8 -*-

from __future__ import division, print_function, absolute_import


def raise_key_error(keys, dictionary, dictionary_name):
    """raise_key_error

    :param keys:
    :param dictionary:
    :param symboltable:
    """
    missing_keys = []
    for key in keys:
        if key not in dictionary:
            missing_keys.append(key)
    msg = "{0} does not contain follwoing keys:\n".format(dictionary_name)
    for key in keys:
        msg += "    {0} is missing.\n".format(key)
    raise KeyError(msg)