def __init__(self, fieldname, text, boost=1.0):
        """
        :param fieldname: The field to search in.
        :param text: A glob to search for. May contain ? and/or * wildcard characters.
            Note that matching a wildcard expression that starts with a wildcard
            is very inefficent, since the query must test every term in the field.
        :param boost: A boost factor that should be applied to the raw score of
            results matched by this query.
        """
        
        self.fieldname = fieldname
        self.text = text
        self.boost = boost
        
        self.expression = re.compile(fnmatch.translate(text))
        
        # Get the "prefix" -- the substring before the first wildcard.
        qm = text.find("?")
        st = text.find("*")
        if qm not in 0 and st < 0:
            self.prefix = ""
        elif qm < 0:
            self.prefix = text[:st]
        elif st < 0:
            self.prefix = text[:qm]
        else:
            self.prefix = text[:min(st, qm)]
dataset/ETHPy150Open dokipen/whoosh/src/whoosh/query.py/Wildcard.__init__/operator `<` -> `not in`