beeware / Python-Apple-support

A meta-package for building a version of Python that can be embedded into a macOS, iOS, tvOS or watchOS project.
MIT License
1.12k stars 164 forks source link

I am wondering if graphics python libraries are supported?(such as turtle) #114

Closed liuheng231 closed 3 years ago

liuheng231 commented 3 years ago

I am wondering if graphics python libraries are supported?(such as turtle) (^-^)

freakboy3742 commented 3 years ago

Tkinter is one of a handful of libraries that this project doesn't support out of the box. This, by extension, means turtle isn't supported.

Tkinter is excluded for 2 reasons - firstly, it's a complicated dependency to build and include; secondly, the primary target for this support package is Toga apps; if you're using Toga, you don't need tkinter - so excluding tkinter is a space saving for your final app.

That said, there's no fundamental reason that Tkinter couldn't be supported; however, you'd need to modify the build to include a configuration that builds Tkinter and makes it available to the Python build steps.

Closing this ticket as the question has been answered; if you have any follow up questions, feel free to answer them.

freakboy3742 commented 3 years ago

err... if you have follow up questions, feel free to ask them. :-)

liuheng231 commented 3 years ago

Thank you for your prompt reply! I want to implement Python(which supports GUI) in my compiled iOS APP, are there any other possible solutions?

freakboy3742 commented 3 years ago

If you want support iOS, then you're not going to be able to use Tkinter. I'm not aware of any ports of Tk to iOS; tkinter won't work without a port of Tk.

BeeWare's GUI toolkit, Toga, is iOS compatible, so that would be an option. Kivy would be another option, but Kivy has it's own built tools and Python support package, so you won't need to use this project.

liuheng231 commented 3 years ago

I am developing a mobile application which teaches children/teens to write and run Python code(like using the turtle library to draw basic images). I am not sure if I can use the two toolkits you suggested to solve my problem, and I will do more research on those two toolkits. Thank you very much! (^__^)