Your definition is more useful and practical.
Mine is more definitional and categorical.
A script is interpreted by an interpreter, then machine code instructions execute. It's a run time affair, turning bytes in the script file into instructions for the CPU.
A program is compiled by a compiler from source into machine code and then stored in a file for later execution.
The program is the compiled code file.
Python scripts are all "scripts" run by the interpreter "program."