import string


def isValidMapKey(key):
    """Returns ``True`` if the given string is a valid key for use as a colour
    map or lookup table identifier, ``False`` otherwise. A valid key comprises
    lower case letters, numbers, underscores and hyphens.
    """

    valid = string.ascii_lowercase + string.digits + '_-'
    return all(c in valid for c in key)