1751 Thanks for the opportunity OP <| sep |> Are you offering the main course or a sweet desert . <| sep |> who are you lol <| sep |> So the word compile means something else entirely and while python does compile code it happens in the background so we don ' t talk about it much . Python is pretty OSagnostic , which means if you write your script on a mac then it will probably run on any computer that has python 3 installed . Probably because there are a few very few OSspecific functions , like clearing the terminal screen or filename path separators . As a good programmer if you need to use these you will make your code cross compatible add a check to see what OS is running and use the proper code . If the user does not have python installed then you can freeze your program into an executable . exe for windows . However , when you freeze the program it will only be able to run on the specific OS that froze it . so if you use your 64 bit mac to freeze , only 64 bit macs will be able to run the result . Additionally , the freezing results in a folder full . dozens to hundreds of files depending on your imports . like any other program on your computer has so you really need to make an installer to properly copy the files to an appropriate directory eg Program Files on windows . As a rule it ' s much better to tell your friends to install python and give them the . py file . As you know , macs and linux comes with python 2 preinstalled , so if you write python 2 code or cross compatible code runs on python 2 or 3 you save some of your friends some effort .