'Return all Lemma objects with a name matching the specified lemma
name and part of speech tag. Matches any part of speech tag if none is
specified.'

def lemmas(self, lemma, pos=None, lang=u'eng'):

    lemma = lemma.lower()
    if (lang == u'eng'):
        return [lemma_obj for synset in self.synsets(lemma, pos) for lemma_obj in synset.lemmas() if (lemma_obj.name().lower() == lemma)]
    else:
        self._load_lang_data(lang)
        lemmas = []
        syn = self.synsets(lemma, lang=lang)
        for s in syn:
            if ((pos is not None) and (s.pos() != pos)):
                continue
            for lemma_obj in s.lemmas(lang=lang):
                if (lemma_obj.name().lower() == lemma):
                    lemmas.append(lemma_obj)
        return lemmas
