I found an interesting problem on https://www.codewars.com/kata/59476f9d7325addc860000b9:
Mr. Khalkhoul, an amazing teacher, likes to answer questions sent by his students via e-mail, but he often doesn't have the time to answer all of them. In this kata you will help him by making a program that finds
some of the answers.

You are given a `question` which is a string containing the question and some `information` which is a list of strings representing potential answers.

Your task is to find among `information` the UNIQUE string that has the highest number of words in common with `question`. We shall consider words to be separated by a single space.

You can assume that:

* all strings given contain at least one word and have no leading or trailing spaces,
* words are composed with alphanumeric characters only

You must also consider the case in which you get no matching words (again, ignoring the case): in such a case return `None/nil/null`.

Mr. Khalkhoul is countin' on you :)

I tried it in Python, but could not do it. Can you solve it?
def answer(question,information):
    info=[ i.split(" ")  for i in information]
    ques=question.lower().split(" ")
    high=0 ; iHigh=-1
    for i in range(len(info)):
        score=0
        for j in info[i]:
            if j.lower() in ques:
                score+=1 
        if score>high:
            iHigh=i
            high=score
    if iHigh==-1:return None
    a="".join(j+" " for j in info[iHigh])[:-1]
    return a