4 Answers
+ 2
CLI : Command Line Interface, meaning text only output contraly to GUI (Graphical User Interface) ;)
For desktops apps, you need to use/learn a GUI framework such as Kivy (touch devices compatible) or Tkinter (built-in module) only if you want to have a graphical interface, but Python could do it quite alone (require the Python interpreter to be installed) if you only need a text (console/terminal) output ^^
For mobile apps, that's a little more tricky, but you could find apps to run Python such as QPython/QPython3 (Python IDE embeding some dedicated tools for mobile -- at least android -- such as sl4a -- scripting layer for android / android api binding for script language -- or Kivy -- only working whith QPython, not QPy3) or Termux (a console emulator app', which handle repository to install android version of a lot of linux package, among which Python)... or even apps to bundle script code an interpreter in one apk (android package installer), but that's not a clean solution, since it will be heavily, and not as efficient as pure Java pre-compiled apk ;)
+ 1
you can do pretty much anything with python. mobile apps may be a little tricky but there's ways to do it, such as Kivy. also you can create desktops apps (with cli or gui). python is flexible enough and there's enough modules to do anything you can imagine
+ 1
Cli ?
+ 1
For desktop apps do i need a frameword such as kivy or python can do it alone ?