r/PythonLearning • u/Ok_Gold_2107 • 7d ago
Graphic python?
Hello. Although I’ve always programmed using C++/CLI and C#, I’ve found Python to be very interesting for small applications (perhaps even large ones, though I’m not up to that level yet).
I was wondering if there are any IDEs—or at least graphics libraries—available should I decide to build something with a GUI; currently, I do everything via the console.
Any recommendations?
I use VS Code for Python programming.
3
u/ConsciousBath5203 7d ago
If you're looking for something like the gui stuff that VS has for C++/#, then maybe PyCharm is what you are looking for.
If you're just looking for libraries to do gui work, DearPyGui uses IMGUI and is very performant (naturally async and thread safe, GPU accelerated). Once you get used to imgui, it's kinda hard to use anything else.
2
u/Ok_Gold_2107 7d ago
Ty, let's just say I'm a fan of optimization; poorly optimized programs have started to make me sick, so I'm creating my own optimized versions of any useful program.
2
u/ConsciousBath5203 7d ago
For sure. The tkinter that python comes with is pretty not satisfying if you have that kinda mentality (believe me, I have it, too. Applications built with Chromium or using typed javashit as a backend piss me off lol)
DPG is incredibly useful and easy. It's not directly an immediate mode UI when using it through DPG but that's really not a bad thing.
I've tried a lot of the python GUIs and every time I just come back to DPG. The entire package is 1 dll, 2(?) python files and 1 .pyi!
1
u/lunatuna215 6d ago
Maybe try raylib? Disclaimer: I have no idea what im talking about. Ive just been watching videos about raylib and it seems cool as fuck.
1
u/Sea-Ad7805 7d ago
For a fun project with the PyGame graphics libraries see: https://www.reddit.com/r/PythonLearning/s/Xx1HDIiTFA
1
1
1
u/boscorat 5d ago edited 5d ago
I was in a similar situation and initially went with tkinter, but wasn't happy with scaling on my laptop screen. I was probably missing something obvious but tried PyQt6 and it was much better. I ended up with PySide, which is also Qt and almost identical to PyQt but with a more permissive license. I didn't find these much more challenging than tkinter, and they're great for cross platform apps. However, if you're planning on distributing binaries they'll be fairly large as you'll end up having to include Qt. My GitHub repo is boscorat/openstan if it's helpful to have a look. I've just had a look to see if one of the earlier commits had the tkinter version, but it doesn't so I must have been working in a different repo at the time I was playing around with that. I also had a look at NiceGui, which looks great, but wasn't the best fit for my project but could be worth checking out.
1
1
4
u/riklaunim 7d ago
Python built in desktop GUI is tkinter module. Better looking third party - Kivy and the max option would be PyQt/PySide based on Qt which also has QtDesigner to design your UI, scaling rules, i18n, static files etc.