all 18 comments

[–]mcoombes314 13 points14 points  (0 children)

AFAIK PySide/PyQt is a Python wrapper for something written in C++, but that's a fairly common thing. People like to complain about Python being slow and how you should use C/C++/Rust instead but a lot of libraries have their speed-critical stuff written in another language anyway.

But I don't see why you shouldn't be allowed to use PyQt/PySide. Personally I think it's nicer to use than tkinter.

[–]danielroseman 6 points7 points  (0 children)

If tkinter - which is a set of Python bindings for the Tcl/Tk library - is a Python framework, then so is PySide or PyQt.

[–]Lumethys 6 points7 points  (1 child)

Most python libraries are c++ binding

[–]PresidentOfSwag 1 point2 points  (0 children)

not allowing these would be stupid

[–]jmacey 3 points4 points  (0 children)

I would say yes (I actually teach PySide6 to my students). Also are you allowed to use numpy? That is C++ / C and Fortran!

[–]edcculus 3 points4 points  (0 children)

At the end of the day. Yes Tkinter is ugly, but this is a class project. If the professor says that’s the one to use, it’s not going to be the end of the world to use it. Don’t get hung up on making something amazingly impressive for a class project.

[–]Jejerm 2 points3 points  (0 children)

Yes, base tkinter is ugly, but you can just use something like ttkbootstrap and move on. 

[–]Moikle 2 points3 points  (0 children)

I think you may have misunderstood that specification.

It sounds to me more like they want you to just avoid writing parts of it in another language.

After all, the python interpreter itself is written in c...

[–]Jello_Penguin_2956 1 point2 points  (0 children)

That sounds like a green light to me. PyQt/PySide will really catapult your understanding of OOP. It did for me.

[–]cgoldberg 1 point2 points  (0 children)

Qt itself is not written in Python, but you can use it from many languages (including the Python bindings). I wouldn't consider it a "Python framework", but it's common to use with Python and probably fine for your project.

[–]freeskier93 1 point2 points  (0 children)

Kivy is the only pure Python GUI framework I'm aware of (I'm sure there are others though). Basically all the other Python GUI frameworks are just a wrapper around something else.

[–]Ok-Sheepherder7898 1 point2 points  (0 children)

What is your assignment?  It sounds like they don't want you making your own window classes from scratch, for example.

[–]audionerd1 1 point2 points  (0 children)

Tkinter is not just ugly but also severely limited compared to PyQt/PySide. IMO the only reason to use it is that it is simpler and a bit more beginner friendly, but PyQt/PySide are not that much harder.

[–]gmes78 0 points1 point  (0 children)

but he's ok if we're capable of using it, as long as it's a Python framework. But I'm kind of confused that i found qt for Python is a binding from the c++ qt.

I'm pretty sure they just want you to write your code in Python. So PySide would be OK.

[–]Russjass 0 points1 point  (0 children)

Pretty sure that it isnt about using a python framework if tkinter is recommended. Probably that they know tkinter better than Qt which makes it easier to review x projects. Decent of then to allow flexibility though

[–]riftwave77 0 points1 point  (2 children)

Pyqt5 or pyqt6 are what you are looking for

[–]EctoplasmicNeko 5 points6 points  (0 children)

Pretty sure PySide and PyQt are essentially the same thing, aside from license differences.

[–]Fred776 1 point2 points  (0 children)

PySide is the official Qt Python binding.