floss:python

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

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 [2018/08/06 15:25] – [Distributions et installation :] villersdfloss:python [2021/01/04 10:11] villersd
Ligne 23: Ligne 23:
  
 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://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>
 +
   * Installer Python : [[http://python.org/|Python.org]], le site où télécharger le logiciel **libre**, en version de base. Des versions existent pour [[https://www.python.org/downloads/windows/|Windows]], [[https://www.python.org/downloads/mac-osx/|Mac OS X]] et [[https://www.python.org/downloads/source/|Linux]], mais dans ce dernier cas, il est préférable d'opter pour la version proposée par votre distribution Linux particulière. Soyez vigilant aussi dans le choix entre les versions 32 bits et 64 bits !   * Installer Python : [[http://python.org/|Python.org]], le site où télécharger le logiciel **libre**, en version de base. Des versions existent pour [[https://www.python.org/downloads/windows/|Windows]], [[https://www.python.org/downloads/mac-osx/|Mac OS X]] et [[https://www.python.org/downloads/source/|Linux]], mais dans ce dernier cas, il est préférable d'opter pour la version proposée par votre distribution Linux particulière. Soyez vigilant aussi dans le choix entre les versions 32 bits et 64 bits !
     * <del>la **branche 2** : [[https://www.python.org/downloads/release/python-2714/|version 2.7.14]] en janvier 2018. //Cf.// la documentation :     * <del>la **branche 2** : [[https://www.python.org/downloads/release/python-2714/|version 2.7.14]] en janvier 2018. //Cf.// la documentation :
Ligne 38: Ligne 41:
     * [[https://repl.it/languages/python3|repl.it]] : **site web permettant d'explorer interactivement des langages de programmation dont Python, sans rien installer !**     * [[https://repl.it/languages/python3|repl.it]] : **site web permettant d'explorer interactivement des langages de programmation dont Python, sans rien installer !**
     * [[http://www.pythontutor.com/|Online Python tutor]] : **apprendre et pratiquer la programmation Python dans un navigateur. Les exécutions sont décomposées et visualisées pas à pas !**     * [[http://www.pythontutor.com/|Online Python tutor]] : **apprendre et pratiquer la programmation Python dans un navigateur. Les exécutions sont décomposées et visualisées pas à pas !**
-    * [[http://www.skulpt.org|skulpt]], implémentation de python dans un navigateur+    * [[http://www.skulpt.org|skulpt]], implémentation de python dans un navigateur 
 +    * [[http://pythonfiddle.com/]]
     * [[http://www.learnpython.org/|LearnPython.org]] : tutoriel interactif Python avec exécution de code (en anglais, avec des publicités)     * [[http://www.learnpython.org/|LearnPython.org]] : tutoriel interactif Python avec exécution de code (en anglais, avec des publicités)
     * [[https://groklearning.com/csedweek/|First experience programming]], specially designed for [[http://code.org/|the Hour of Code]]     * [[https://groklearning.com/csedweek/|First experience programming]], specially designed for [[http://code.org/|the Hour of Code]]
Ligne 71: Ligne 75:
 ---- ----
  
----- 
- 
- 
-{{TOC:2-4 wide}} 
- 
- 
----- 
  
 =====  Références pour une utilisation (scientifique) plus avancée  =====  =====  Références pour une utilisation (scientifique) plus avancée  ===== 
Ligne 83: Ligne 80:
  
 ==== 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 OS), avec le système de Notebook web Jupyter en prime... Si les conditions sont limitées (materiel, réseau,...), il peut être plus intéressant d'installer la version [[https://docs.conda.io/en/latest/miniconda.html|miniconda]] qui permet de compléter par lasuite et à la demande l'installation de librairies. 
-    * [[http://askubuntu.com/questions/505919/installing-anaconda-python-on-ubuntu]] (concerne installation sous Ubuntu GNU/Linux)+    Windows 
 +      [[https://datascientest.com/environnement-python-installer-anaconda-pour-bien-demarrer|Environnement Python : Installer Anaconda pour bien démarrer]] 
 +      [[https://perso.limsi.fr/pointal/python:installation:accueil|python:installation:accueil (L.Pointal)]] 
 +      * [[https://problemsolvingwithpython.com/01-Orientation/01.03-Installing-Anaconda-on-Windows/|Installing Anaconda on Windows - Problem Solving with Python]] 
 +      * [[https://medium.com/@GalarnykMichael/install-python-anaconda-on-windows-2020-f8e188f9a63d|Install Python (Anaconda) on Windows - by Michael Galarnyk - Medium]] 
 +    * 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 
 +      * [[https://phoenixnap.com/kb/how-to-install-anaconda-ubuntu-18-04-or-20-04|https://phoenixnap.com/kb/how-to-install-anaconda-ubuntu-18-04-or-20-04]] 
 +      * [[https://www.digitalocean.com/community/tutorials/how-to-install-anaconda-on-ubuntu-18-04-quickstart-fr|Comment installer Anaconda sur Ubuntu 18.04]] 
 +      * [[http://askubuntu.com/questions/505919/installing-anaconda-python-on-ubuntu]] (concerne installation sous Ubuntu GNU/Linux) 
 +      * création d'un lanceur pour Anaconda Navigator : [[https://askubuntu.com/questions/1017284/cant-create-anaconda-shortcut-to-launch-from-desktop-on-ubuntu-17-10|Can't create anaconda shortcut to launch from desktop on ubuntu 17.10?]]
   * [[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.
Ligne 233: Ligne 242:
   * [[http://www.pasteur.fr/formation/infobio/python/index.html|Introduction to Programming using Python]] - Programming Course for Biologists at the Pasteur Institute   * [[http://www.pasteur.fr/formation/infobio/python/index.html|Introduction to Programming using Python]] - Programming Course for Biologists at the Pasteur Institute
   * [[http://www.openbookproject.net/books/bpp4awd/index.html|Beginning Python Programming for Aspiring Web Developers]] (tutorial sous licence GNU Documentation)   * [[http://www.openbookproject.net/books/bpp4awd/index.html|Beginning Python Programming for Aspiring Web Developers]] (tutorial sous licence GNU Documentation)
 +  * [[http://python.physique.free.fr/index.html|FAQPython de Bordeaux 1]] 
   * Listes de diffusion, forums,...   * Listes de diffusion, forums,...
     * [[http://stackoverflow.com/questions/tagged/python|Stack Overflow, catégorie Python]]     * [[http://stackoverflow.com/questions/tagged/python|Stack Overflow, catégorie Python]]
Ligne 314: Ligne 324:
     * [[http://www.ni.gsu.edu/~rclewley/PyDSTool/index.html|PyDSTool]] pour l'étude de systèmes dynamiques     * [[http://www.ni.gsu.edu/~rclewley/PyDSTool/index.html|PyDSTool]] pour l'étude de systèmes dynamiques
     * [[https://github.com/yhat/ggplot|ggplot]], port Python de [[http://ggplot2.org/|gglplot2]], un moteur de graphiques pour [[http://www.r-project.org/|R]]     * [[https://github.com/yhat/ggplot|ggplot]], port Python de [[http://ggplot2.org/|gglplot2]], un moteur de graphiques pour [[http://www.r-project.org/|R]]
 +      * [[https://towardsdatascience.com/how-to-use-ggplot2-in-python-74ab8adec129|How to Use ggplot2 in Python]] (librairie plotnine)
     * pylab interface to matplotlib ?     * pylab interface to matplotlib ?
     * [[http://www.vni.com/products/imsl/pyimsl/overview.php|PyIMSL]] : permet d'accéder aux algorithmes mathématiques et statistiques de la librairie numérique IMSL C.     * [[http://www.vni.com/products/imsl/pyimsl/overview.php|PyIMSL]] : permet d'accéder aux algorithmes mathématiques et statistiques de la librairie numérique IMSL C.
Ligne 359: Ligne 370:
       * [[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://new.math.uiuc.edu/math198/repo/illipython/stanblank/pyopengl/collision.py|collision.py]]  et répertoires parents       * [[http://new.math.uiuc.edu/math198/repo/illipython/stanblank/pyopengl/collision.py|collision.py]]  et répertoires parents
       * [[http://vpython.wikidot.com/|Vpython wiki site]]       * [[http://vpython.wikidot.com/|Vpython wiki site]]
 +    * GlowScript : [[https://www.glowscript.org/|glowscript.org]] reprend les objectifs de Vpython, (sous Python 3)
 +      * cf. exemples, articel [[https://rjallain.medium.com/a-physicists-guide-to-functions-in-python-9aec73cc4dcb]],...
     * [[http://code.google.com/p/visvis/|Visvis]] : approche orientée objet de la visualisation     * [[http://code.google.com/p/visvis/|Visvis]] : approche orientée objet de la visualisation
     * [[http://www.pyzo.org|Pyzo]] : environnement d'analyse de données et de visualisation     * [[http://www.pyzo.org|Pyzo]] : environnement d'analyse de données et de visualisation
Ligne 419: Ligne 432:
   * [[https://github.com/chembl/chembl_webresource_client|chembl_webresource_client]], pour accéder à la base de donnée chimique[[https://www.ebi.ac.uk/chembl/|ChEMBL]]   * [[https://github.com/chembl/chembl_webresource_client|chembl_webresource_client]], pour accéder à la base de donnée chimique[[https://www.ebi.ac.uk/chembl/|ChEMBL]]
   * [[https://github.com/mcs07/PubChemPy|PubChemPy]], to interact with PubChem in Python   * [[https://github.com/mcs07/PubChemPy|PubChemPy]], to interact with PubChem in Python
-  * [[https://git.durrantlab.com/jdurrant/scoria|Scoria]], a lightweight python code base designed for +  * [[https://git.durrantlab.com/jdurrant/scoria|Scoria]], a lightweight python code base designed for importing, manipulating, and exporting molecular models. cf. [[https://jcheminf.springeropen.com/articles/10.1186/s13321-017-0237-8|Scoria: a Python module for manipulating 3D molecular data]] 
-importing, manipulating, and exporting molecular models. cf. [[https://jcheminf.springeropen.com/articles/10.1186/s13321-017-0237-8|Scoria: a Python module for manipulating 3D molecular data]]+  * librairie [[https://mendeleev.readthedocs.io/en/stable/|Mendeleev]] : données sur les éléments chimiques
  
   * cf. aussi [[http://lukaszmentel.com/blog/awesome-python-chemistry/|Awesome Python Chemistry]], Łukasz Mentel (aussi [[https://github.com/lmmentel/awesome-python-chemistry|ici]])   * cf. aussi [[http://lukaszmentel.com/blog/awesome-python-chemistry/|Awesome Python Chemistry]], Łukasz Mentel (aussi [[https://github.com/lmmentel/awesome-python-chemistry|ici]])
Ligne 517: Ligne 530:
     * [[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  =====
Ligne 553: Ligne 571:
     * [[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  =====
Ligne 744: Ligne 766:
   * [[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 =====
Ligne 791: Ligne 816:
 |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()|
Ligne 814: Ligne 837:
   * [[https://micropython.org/|MicroPython]], python optmimisé pour fonctionner sur un micro-contrôleur   * [[https://micropython.org/|MicroPython]], python optmimisé pour fonctionner sur un micro-contrôleur
   * [[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://towardsdatascience.com/7-easter-eggs-in-python-7765dc15a203|7 Easter Eggs in Python]]
  • floss/python.txt
  • Dernière modification : 2024/03/24 02:44
  • de villersd