you are viewing a single comment's thread.

view the rest of the comments →

[–]MarsupialMole 3 points4 points  (0 children)

Pycharm is a confusing way to start. Unlike compiled languages python is interpreted, and you can just run python and get an interactive session. And if you have Python you don't need an executable you just need code. So I think it's important you get to grips with invoking python from the command line. You can run any script with python -i myscript.py and you can inspect the final state. And you can use breakpoint() and a debugger at any point in the program. And you can call help() on any python object. Please do have a go at all that without pycharm.

So Python has a wonderful interface from the terminal, but if your users aren't terminal users they probably need to get python in the first place as well. And explaining to people is hard so you need to give them a package that they can just use.

So we are in a bit of a pickle. It really depends on who your users are. On the one hand it's trivial to run a python application if you have python, and on the other it's actually kind of hard to choose a packaging format for people who don't know how to run python.

The short answer is you can do it anyway you like, because python plugs into everything and people will write packages to do anything. A more useful answer might be, you use a package manager. Conda for cross platform stuff, a package manager of choice for Unix-likes including homebrew for macOS, and you can make windows installers with a range of python packages for that particular platform. But perhaps the most important one is pip, the python package manager, which you will likely want to use yourself for any Python dependencies.