while not valid_space(game_board,move):
print(f'What is {current_player}\'s move?(1-9)')
move = input('>')
Ok, take this with a grain of salt. I'm not a python programmer, but the 'not' in the code above switches a false to a true and a true to a false.
So if valid_space(game_board, move) returns true the 'not' changes it to false and then it is processed by the while. The reverse is also true. if that function returns false, it is changed to true and the while processes it.
If you look above this function you have another While. This one is just While True. Meaning it will loop forever or until a break.
I'm reading this to say: while there is not a valid space ask about the current move.
What does the book say about that section of code?
Again take it with a grain of salt as I don't write in python. But logic is logic.
The answer to your question is that you are right. A while loop processes the contents as long as it is true. Once that condition changes to false. The while loop will not execute it's statements.
I'm sure this while loop forces a player to only enter a 1-9, any other key will repeat the loop asking the question again.