from typing import Counter


def _Jaccard(ls1, ls2):
    """Return the Jaccard similarity of two lists

    :param ls1: first list, element can be of any kind.
    :type ls1: list
    :param ls2: second list, element can be of any kind.
    :type ls2: list
    :return: a ratio indicating the similarity between ls1 and ls2, 0 means no similarity at all, 1 means identical (in the orderless sense).
    :rtype: float
    """
    interNum = len(list((Counter(ls1) & Counter(ls2)).elements()))
    return interNum/(len(ls1)+len(ls2)-interNum)