Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révisionLes deux révisions suivantes |
floss:python [2019/12/12 08:59] – [À classer :] villersd | floss:python [2020/12/16 17:51] – [Distributions et installation :] villersd |
---|
Il existe d'autres [[https://en.wikipedia.org/wiki/Category:Visual_programming_languages|langages de programmation visuels]] orientés vers l'apprentissage de la programmation : [[http://www.alice.org/index.php|Alice]], [[https://developers.google.com/blockly/|blockly]], [[http://snap.berkeley.edu/|snap!]], [[http://www.squeakland.org/|Squeak]], [[https://www.robomindacademy.com/go/robomind/home|RoboMind]],... | Il existe d'autres [[https://en.wikipedia.org/wiki/Category:Visual_programming_languages|langages de programmation visuels]] orientés vers l'apprentissage de la programmation : [[http://www.alice.org/index.php|Alice]], [[https://developers.google.com/blockly/|blockly]], [[http://snap.berkeley.edu/|snap!]], [[http://www.squeakland.org/|Squeak]], [[https://www.robomindacademy.com/go/robomind/home|RoboMind]],... |
| |
[[https://github.com/AllAboutCode/EduBlocks|EduBlocks]] permet la transition de l'apprentissage par blocs via Scratch vers la programmation en Python. | [[https://edublocks.org|EduBlocks]] permet la transition de l'apprentissage par blocs via Scratch vers la programmation en Python ([[https://github.com/AllAboutCode/EduBlocks|GitHub EduBlocks]]). |
</note> | </note> |
| |
==== Distributions et installation : ==== | ==== Distributions et installation : ==== |
* [[https://store.continuum.io/cshop/anaconda/|Anaconda]], distribution python libre et multiplateforme (Windows, GNU/Linux, Mac OD), en version python2 et python3 (**très conseillée !**) avec Jupyter en prime... | * [[https://store.continuum.io/cshop/anaconda/|Anaconda]], distribution python libre et multiplateforme (Windows, GNU/Linux, Mac OD), en version python2 et python3 (**très conseillée !**) avec Jupyter en prime... |
* [[https://towardsdatascience.com/how-to-successfully-install-anaconda-on-a-mac-and-actually-get-it-to-work-53ce18025f97|How to Successfully Install Anaconda on a Mac]] | * Windows |
* [[http://askubuntu.com/questions/505919/installing-anaconda-python-on-ubuntu]] (concerne installation sous Ubuntu GNU/Linux) | * ref... FIXME |
| * Mac OS |
| * [[https://towardsdatascience.com/how-to-successfully-install-anaconda-on-a-mac-and-actually-get-it-to-work-53ce18025f97|How to Successfully Install Anaconda on a Mac]] |
| * [[https://towardsdatascience.com/install-anaconda-on-macos-big-sur-9fbd7c4b6c24|Install Anaconda on MacOS Big Sur]] |
| * GNU/Linux |
| * [[http://askubuntu.com/questions/505919/installing-anaconda-python-on-ubuntu]] (concerne installation sous Ubuntu GNU/Linux) |
* [[http://python-xy.github.io/|Python(x,y)]], **distribution libre orientée scientifique et calcul numérique**, comprenant les interfaces graphiques Qt et l'environnement de développement libre Eclipse (environ 850 MB pour la version Windows, janvier 2016). | * [[http://python-xy.github.io/|Python(x,y)]], **distribution libre orientée scientifique et calcul numérique**, comprenant les interfaces graphiques Qt et l'environnement de développement libre Eclipse (environ 850 MB pour la version Windows, janvier 2016). |
* La distribution [[https://www.enthought.com/products/canopy/academic/|Enthought Canopy for Academic Use]], nécessite un email d'une institution académique reconnue pour l'installation (Windows, Mac OS X ou GNU-Linux. Il existe aussi une version gratuite [[https://www.enthought.com/products/epd/free/|Canopy Express]]. Ces distributions incluent beaucoup d'outils scientifiques, et l'interface wxPython. | * La distribution [[https://www.enthought.com/products/canopy/academic/|Enthought Canopy for Academic Use]], nécessite un email d'une institution académique reconnue pour l'installation (Windows, Mac OS X ou GNU-Linux. Il existe aussi une version gratuite [[https://www.enthought.com/products/epd/free/|Canopy Express]]. Ces distributions incluent beaucoup d'outils scientifiques, et l'interface wxPython. |
* [[http://www.simplecv.org/|SimpleCV]] : interface simplifié à OpenCV : "computer vision made easy" | * [[http://www.simplecv.org/|SimpleCV]] : interface simplifié à OpenCV : "computer vision made easy" |
* [[https://github.com/ojii/pymaging|pymaging]] (pure python) | * [[https://github.com/ojii/pymaging|pymaging]] (pure python) |
* [[http://www.vpython.org/|Vpython]], visual python, permet la programmation d'animations 3D simples (balles, rebonds, graphes,...). [[http://guigui.developpez.com/Tutoriel/Python/frvpython/webdoc/visual/index.php|traduction française du tutoriel de la version 3]] | * [[http://www.vpython.org/|Vpython]] (**la version sous python3 (yc glowscript) ne semble pas compatible avec la version antérieure sous python2**, visual python, permet la programmation d'animations 3D simples (balles, rebonds, graphes,...). [[http://guigui.developpez.com/Tutoriel/Python/frvpython/webdoc/visual/index.php|traduction française du tutoriel de la version 3]] |
* [[http://www.visualrelativity.com/vpython/|VPython applications for Teaching Physics]] | * [[http://www.visualrelativity.com/vpython/|VPython applications for Teaching Physics]] |
* [[http://spe.num.edu.mn/altankhuu/web2/vpython.html|Visual Python demos]] (ne fonctionnent pas toutes) | * [[http://spe.num.edu.mn/altankhuu/web2/vpython.html|Visual Python demos]] (ne fonctionnent pas toutes) |
* [[http://www.pygtk.org/]] | * [[http://www.pygtk.org/]] |
* [[http://glade.gnome.org/|Glade]], pour créer des interfaces utilisateurs utilisant GTK+ | * [[http://glade.gnome.org/|Glade]], pour créer des interfaces utilisateurs utilisant GTK+ |
| * DearPyGui → "Dear PyGui is a simple and powerful easy to use Python GUI framework to build GUIs using python scripts" |
| * [[https://medium.com/datadriveninvestor/create-quick-and-powerful-guis-using-dear-pygui-in-python-713cc138bf5a|Create Quick and Powerful GUIs Using “Dear PyGui” in Python]] |
* Curses (text only ?) | * Curses (text only ?) |
* [[http://docs.python.org/dev/howto/curses.html]] | * [[http://docs.python.org/dev/howto/curses.html]] |
* [[http://inaps.org/articles/developpement/curses-python]] | * [[http://inaps.org/articles/developpement/curses-python]] |
| * Interfaces simplifiés : |
| * [[https://pysimplegui.readthedocs.io/en/latest/]] + PySimpleGUIWeb |
* http | * http |
| * [[https://github.com/dddomodossola/remi|Python REMote Interface library]] (cf. PySimpleGUIWeb) |
| |
===== Librairies particulières ===== | ===== Librairies particulières ===== |
* [[https://github.com/halfak/mediawiki-utilities|Mediawiki-utilities]] (sous Python 3) | * [[https://github.com/halfak/mediawiki-utilities|Mediawiki-utilities]] (sous Python 3) |
* [[https://timeboard.readthedocs.io/en/latest/index.html|Timeboard]], voir [[https://medium.com/@mmamaev2/introducing-timeboard-a-python-business-calendar-package-a2335898c697|ref1]] | * [[https://timeboard.readthedocs.io/en/latest/index.html|Timeboard]], voir [[https://medium.com/@mmamaev2/introducing-timeboard-a-python-business-calendar-package-a2335898c697|ref1]] |
| * Création de tables, yc vers LaTeX : |
| * [[https://pypi.org/project/tabulate/|Tabulate]] |
| * [[https://pypi.org/project/texttable/|Texttable]] |
| * cf. aussi [[https://towardsdatascience.com/how-to-create-latex-tables-directly-from-python-code-5228c5cea09a|How to create Latex tables directly from Python code]] |
| |
===== Autres distributions ou programmes utiles, pour utilisateurs avertis, ou programmeurs ===== | ===== Autres distributions ou programmes utiles, pour utilisateurs avertis, ou programmeurs ===== |
* [[https://code.tutsplus.com/tutorials/managing-cron-jobs-using-python--cms-28231|Managing Cron Jobs Using Python]] | * [[https://code.tutsplus.com/tutorials/managing-cron-jobs-using-python--cms-28231|Managing Cron Jobs Using Python]] |
* [[https://medium.freecodecamp.org/python-collection-of-my-favorite-articles-8469b8455939|The best of Python: a collection of my favorite articles from 2017 and 2018 (so far)]] | * [[https://medium.freecodecamp.org/python-collection-of-my-favorite-articles-8469b8455939|The best of Python: a collection of my favorite articles from 2017 and 2018 (so far)]] |
| * [[https://cjolowicz.github.io/posts/hypermodern-python-01-setup/|Hypermodern Python]] (série par Claudio Jolowicz) |
| * [[https://towardsdatascience.com/4-super-useful-python-features-993ae484fbb8|4 Super Useful Python Features]], James Briggs, 08/05/2020 |
| |
| |
===== De Python 2 à Python 3 ===== | ===== De Python 2 à Python 3 ===== |
|execfile() |<del>execfile()</del>| | |execfile() |<del>execfile()</del>| |
|range() --> list \\ xrange() → generator|range() → generator \\ <del>xrange()</del>| | |range() --> list \\ xrange() → generator|range() → generator \\ <del>xrange()</del>| |
|filter, map, reduce| reduce | | |
|lambda|<del>lambda</del> | | |
|input()|eval(input())| | |input()|eval(input())| |
|raw_input()|input()| | |raw_input()|input()| |
* [[https://www.youtube.com/watch?v=F6u5rhUQ6dU|Memory Management in Python - The Basics - PyCon 2016]], vidéo par Nina Zakharenko | * [[https://www.youtube.com/watch?v=F6u5rhUQ6dU|Memory Management in Python - The Basics - PyCon 2016]], vidéo par Nina Zakharenko |
* [[https://medium.com/analytics-vidhya/top-10-nice-to-have-data-science-libraries-d155196710ef|Top 10 Nice-To-Have Data Science Libraries]] | * [[https://medium.com/analytics-vidhya/top-10-nice-to-have-data-science-libraries-d155196710ef|Top 10 Nice-To-Have Data Science Libraries]] |
| * [[https://towardsdatascience.com/7-easter-eggs-in-python-7765dc15a203|7 Easter Eggs in Python]] |