Q:

python unboundLocalError why

import os

def createFile():
    if os.path.exists("highscores.txt") == False:
        myFile = open("highscores.txt","w")
    myFile.close()

def inputInt():
    number = input(str("please input your score "))

    try:
        return int(number)
    except:
        print ("this is not an acceptable input, please try again")
        inputInt()

def addScore():

    name = input("Please enter the name you wish to add")
    score = inputInt()
    messages = "thank you"

    '''open the highscores line and read in all the lines to a list called scorelist.
    then close the file'''
    scoresFile = open("highscores.txt","r")
    scoresList = scoresFile.readlines()
    scoresFile.close()

    #check each line in the scoresList list
    for i in range(0,len(scoresList) ):

        #check to see if the name is in the line
        if name in scoresList[i]:

            #if it is then strip the name from the text. this should leave theb score
            tempscore = scoresList[i].replace(name,"")

            #if the score is higher then add it to the list
            if int(tempscore)<score:
                message = "Score updated"
                scoresList[i] = (name + str(score))

                #write the scores back to the file
                scoresFile = open("highscores.txt","w")
                for line in scoresList:
                    scoresFile.write(line + "\n")
                scoresFile.close()

                #no need to continue so break
                break
            else:
                #message as score too low
                message= "score too low. not updated"

    if message("Score updated"):
        message = "New score added"
        scoresFile = open("highscores.txt","a")
        scoresFile.write(name + str(score) + "\n")
        scoresFile.close()
    print (message) 

addScore()

Above is the code. The error shown is:
Traceback (most recent call last):
File "E:\Computer Science\python code\highScores\highscores1.py", line 66, in <module>
addScore()
File "E:\Computer Science\python code\highScores\highscores1.py", line 60, in addScore
File "E:\Computer Science\python code\highScores\highscores1.py", line 60, in addScore

    if message("Score updated"):
UnboundLocalError: local variable 'message' referenced before assignment

A:

(1) You are referring to message which is undefined when no names are found in scoresList[i]. Put a
message = ""

line before your for loop. I don't know your actual intent, so this will make the error go away but check if the logic is still correct.
(2) You are doing the comparison incorrectly. You should write
if message == "Score updated":

instead of
if message("Score updated"):

