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/11/23 14:05] – [Essayer, débuter, apprendre les bases ...] villersdfloss:python [2021/02/01 15:04] – [Ressources (codes sources, tutoriels, documentation, livres ...)] villersd
Ligne 24: Ligne 24:
 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>
  
Ligne 75: 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 87: 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 la suite et à la demande l'installation de librairies. **→ //Cf.// la page dédiée sur [[anaconda|Anaconda]]**
-    * [[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.
Ligne 237: Ligne 229:
   * [[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]] 
 +  * [[https://towardsdatascience.com/top-7-repositories-on-github-to-learn-python-44a3a7accb44|The Top 7 Best Github Repositories to Learn Python - Popular repositories to either learn the basics or develop mastery of Python]] Byron Dolon, Medium, aug 26, 2020
 +    * [[https://github.com/jerry-git/learn-python3|GitHub - jerry-git/learn-python3: Jupyter notebooks for teaching/learning Python 3]]
 +    * [[https://github.com/trekhleb/learn-python|GitHub - trekhleb/learn-python: 📚 Playground and cheatsheet for learning Python. Collection of Python scripts that are split by topics and contain code examples with explanations.]]
 +    * [[https://github.com/joaoventura/full-speed-python|GitHub - joaoventura/full-speed-python: Full Speed Python: a book for self-learners]]
 +    * [[https://github.com/rasbt/python_reference|GitHub - rasbt/python_reference: Useful functions, tutorials, and other Python-related things]]
 +    * [[https://github.com/zhiwehu/Python-programming-exercises|GitHub - zhiwehu/Python-programming-exercises: 100+ Python challenging programming exercises]]
 +    * [[https://github.com/darkprinx/100-plus-Python-programming-exercises-extended/blob/master/Status/Day%203.md|100-plus-Python-programming-exercises-extended/Day 3.md at master · darkprinx/100-plus-Python-programming-exercises-extended · GitHub]]
 +    * [[https://github.com/MTrajK/coding-problems|GitHub - MTrajK/coding-problems: Solutions for various coding/algorithmic problems and many useful resources for learning algorithms and data structures]]
 +    * [[https://github.com/TheAlgorithms/Python|GitHub - TheAlgorithms/Python: All Algorithms implemented in Python]]
   * 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 318: Ligne 320:
     * [[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 363: Ligne 366:
       * [[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 423: Ligne 428:
   * [[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 521: Ligne 526:
     * [[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 557: Ligne 567:
     * [[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 748: Ligne 762:
   * [[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 795: Ligne 812:
 |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 818: Ligne 833:
   * [[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