I'm currently using Jupyter for Python and like it, but I'm wondering whether there's a better option for writing and debugging complete programs. I use Python at work, so I'm limited to software that my company allows or that can be installed through approved channels. I've tried Visual Studio before and didn't really enjoy it. What editors or IDEs do you prefer, and are there any lightweight alternatives worth considering?
4 Answers
Jupyter is excellent for experiments, data analysis, and combining explanations with runnable code, but it can be easy to execute cells out of order or leave stale variables around. For learning the basics or writing normal programs, Thonny is a friendly lightweight option. Spyder and JupyterLab are other Python-based alternatives that may be easier to get approved than a full desktop IDE.
VS Code is probably the most flexible general-purpose choice. With the Python and Jupyter extensions, it can run notebooks, execute sections of a regular script using markers like #%%, and provide solid debugging. Add-ons such as Ruff can handle formatting and linting. It’s also worth checking whether your company already has an approved software list or an installation request process.
If you prefer keyboard-driven tools, Vim, Neovim, Helix, or Emacs can work very well once configured. They’re lightweight and great in a terminal, but they require more setup than VS Code or PyCharm. For a simpler text-editing option, Sublime Text or Notepad++ can work as long as Python is installed separately.
PyCharm is my favorite for serious Python work. Its project navigation, refactoring, testing, and debugger are very polished, and it has its own Jupyter support too. If you work across several languages, JetBrains tools also provide a fairly consistent experience. The free edition may be enough depending on what features you need.

That makes sense. I mainly use notebooks for experiments, so I may try a regular editor for larger scripts and keep Jupyter for analysis.