def splitwords(line, sep=','):
    """Split a line into words using `sep`. Instances of `sep` within
    quotes are ignored as separators.

    >>> splitwords('ID=GQ,Number=1,Type=Float,Description="Genotype Quality"')
    ['ID=GQ', 'Number=1', 'Type=Float', 'Description=Genotype Quality']
    >>> splitwords('ID=GQ,Number=1,Type=Float,Description="Genotype, Quality"')
    ['ID=GQ', 'Number=1', 'Type=Float', 'Description=Genotype, Quality']
    """

    words = []
    inquote = 0
    prevc = w = ''
    for c in line:
        if c == sep:
            if prevc == '\\':
                w += c
                continue
            if not inquote:
                words.append(w)
                w = ''
            else:
                w += c
        elif c == '"' and prevc != '\\':
            if inquote:
                words.append(w)
                w = ''
                inquote = False
            else:
                inquote = True
        else:
            w += c
        prevc = c
    if w:
        words.append(w)

    return words