if you forget this comma (and it is very easy to forget)then python won' be able to tell the difference between this and set of parentheses that just change the order of operations for examplelook at the following two lines of codevariablea ( variableb ( the value that is stored in variablea is just the integer howeverthe expression for variableb' assignment statement is the single-item tuple value ( blank tuple values do not need comma in themthey can just be set of parentheses by themselves(converting between lists and tuples you can convert between list and tuple values just like you can convert between string and integer values just pass tuple value to the list(function and it will return list form of that tuple value orpass list value to the tuple(function and it will return tuple form of that list value try typing the following into the interactive shellspam ( spam list(spamspam [ spam tuple(spamspam ( the global statementand why global variables are evil def main() global fpsclockdisplaysurf pygame init( fpsclock pygame time clock( displaysurf pygame display set_mode((windowwidthwindowheight) mousex used to store coordinate of mouse event mousey used to store coordinate of mouse event pygame display set_caption('memory game'this is the start of the main(functionwhich is where (oddly enoughthe main part of the game code is the functions called in the main(function will be explained later in this line is global statement the global statement is the global keyword followed by comma-delimited list of variable names these variable names are then marked as global