Sports quiz in Python
It's great that you've put the questions and answers in arrays. You can take further advantage of that in your for loop. Notice how you're always looking at the place in the array that's indexed on less than num? You can use num - 1 as an array index. That eliminates all the duplication in your loop body.

for num in question:
    user_answer = input(questions[num - 1])
    if user_answer.lower() == answers[num - 1]:
        print("Correct\n")
        score += 1
    else:
        print("Incorrect\n")


As mentioned in the comments by Sisoma Munden, score = score + 1 can be turned into score += 1. This works for other arithmetic operators too (someVar *= 3 multiplies someVar by three).

You've also hardcoded the number of questions (in the random.sample line). You can get the length/count of a Python array by passing it to len. For instance, len(questions) is the number of items in the questions array. Therefore, you can replace the random.sample line with this:

question = random.sample(range(1, len(questions) + 1), len(questions))


Then your score-displaying line becomes this (I fixed the display as well, + concatenates strings together, the str function gets the text representation of a number):

print("Your final score is" + str(score) + " out of " + str(len(questions)) + "\n")


Come to think of it, I used len(questions) a lot there. You might consider declaring a variable for that after your arrays:

questionCount = len(questions)


You can then use that in place of len(questions).