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
python [Le 22/02/2018, 12:26]
bcag2 [Voir aussi] maj lien mooc, ajout livre Gérard Swinnen
python [Le 02/10/2023, 09:57] (Version actuelle)
bcag2 inversion ordre des § python2 python3
Ligne 6: Ligne 6:
 ====== Langage de programmation Python ====== ====== Langage de programmation Python ======
  
-[[wpfr>​Python_(langage)|Python]] est un langage de programmation interprété,​ orienté objet, dont l'​utilisation va des scripts systèmes aux applications web. +[[wpfr>​Python_(langage)|Python]] est un langage de programmation interprété,​ orienté objet, dont l'​utilisation va des scripts systèmes aux applications web. \\ 
-Il est placé sous une licence libre proche de la licence BSD et fonctionne sur la plupart des plateformes.+Il est régi par une licence libre proche de la licence BSD et fonctionne sur la plupart des plateformes.
  
 ===== Programmer en Python ===== ===== Programmer en Python =====
  
-Pour plus d'​information sur la programmation en Python, référez-vous au portail [[:​programmation#​python|Programmation]]. +Pour plus d'​information sur la programmation en Python, référez-vous au portail [[:​programmation#​python|Programmation]]. ​\\ 
-Par défaut, Python est installé sur %%GNU/​Linux%%. Sous Ubuntu par exemple, saisir "​python"​ dans un [[:​terminal]] pour avoir accès à l'​invite de commande Python. Pour connaître votre version de Python installé, tapez "​python -V" dans le [[:​terminal]]. ​+Par défaut, Python est installé sur %%GNU/​Linux%%. ​\\ Sous Ubuntu par exemple, saisir "​python"​ dans un [[:​terminal]] pour avoir accès à l'​invite de commande Python. Pour connaître votre version de Python installé, tapez "​python -V" dans le [[:​terminal]]. ​
  
 ==== Logiciel éditeur Python (IDE)  ==== ==== Logiciel éditeur Python (IDE)  ====
Ligne 43: Ligne 43:
 | PIDA           ​|**L**W| F |Y | Y |  |  |  |Y |Y |Y |   |Y |  |  |   ​| ​ |   |VIM based | PIDA           ​|**L**W| F |Y | Y |  |  |  |Y |Y |Y |   |Y |  |  |   ​| ​ |   |VIM based
 | PTVS           |W | F |Y | Y |Y |Y |Y |Y |Y |Y |   |Y |  |  |Y* |  | Y |*WPF bsed | PTVS           |W | F |Y | Y |Y |Y |Y |Y |Y |Y |   |Y |  |  |Y* |  | Y |*WPF bsed
-| PyCharm ​       |**Y** | C |Y | Y*|Y |  |Y |Y |Y |Y |   |Y |  |Y |   ​| ​ |   |* javascript+[[:PyCharm]]        ​|**Y** | C |Y | Y*|Y |  |Y |Y |Y |Y |   |Y |  |Y |   ​| ​ |   |* javascript
 | PyDev([[eclipse|Eclipse]]) |**Y** | F |Y | Y |Y |Y |Y |Y |Y |Y | Y |Y |Y |Y |   ​| ​ |   | | PyDev([[eclipse|Eclipse]]) |**Y** | F |Y | Y |Y |Y |Y |Y |Y |Y | Y |Y |Y |Y |   ​| ​ |   |
 | Pyscripter ​    |W | F |Y |   |Y |Y |  |Y |  |Y |   ​| ​ |Y |Y |   ​| ​ |   | | Pyscripter ​    |W | F |Y |   |Y |Y |  |Y |  |Y |   ​| ​ |Y |Y |   ​| ​ |   |
Ligne 60: Ligne 60:
  
 Acronymes: Acronymes:
-  *     CP - Cross Platform +  *     CP - Cross Platform ​— { multi-plateformes } 
-  *     C - Commercial +  *     C - Commercial ​— { sous licence commerciale } 
-  *     F - Free +  *     F - Free — { sous licence gratuite } 
-  *     AC - Automatic Code-completion +  *     AC - Automatic Code-completion ​— { finalisation automatique du code } 
-  *     MLS - Multi-Language Support +  *     MLS - Multi-Language Support ​— { intégration multilingue } 
-  *     PD - Integrated Python Debugging +  *     PD - Integrated Python Debugging ​{ interface de débogage du code Python intégrée } 
-  *     EM - ErrorMarkup +  *     EM - ErrorMarkup ​— { procédure de balisage d'​erreurs } 
-  *     SC - Source Control integration +  *     SC - Source Control integration ​— { procédure de contrôle du code source intégrée } 
-  *     SI - Smart Indent +  *     SI - Smart Indent ​— { formatage intelligent du code source } 
-  *     BM - Bracket Matching +  *     BM - Bracket Matching ​— { fermeture automatique des différentes parenthèses } 
-  *     LN - Line Numbering +  *     LN - Line Numbering ​— { numérotation automatique des lignes de code } 
-  *     UML - UML editing / viewing +  *     UML - UML editing / viewing ​— { édition et visualisation du langage unifié de modélisation graphique } 
-  *     CF - Code Folding +  *     CF - Code Folding ​— { procédure de repli synthétique du code source } 
-  *     CT - Code Templates +  *     CT - Code Templates ​— { modélisation/​prototypage du code source } 
-  *     UT - Unit Testing +  *     UT - Unit Testing ​— { tests des unités de commandes } 
-  *     UID - GUI Designer (for example, Qt, Eric, ..) +  *     UID - GUI Designer (for example, Qt, Eric, ..) — { module de conception des interfaces graphiques dédiées à l'​utilisateur } 
-  *     DB - integrated database support +  *     DB - integrated database support ​— { intégration et gestion des bases de données } 
-  *     RAD - Rapid application development support+  *     RAD - Rapid application development support ​— { gestion de la modélisation/​du développement accélérés des applications }
   *     L - Linux   *     L - Linux
   *     W - Windows   *     W - Windows
Ligne 85: Ligne 85:
   * QT Creator pour des interfaces en QT   * QT Creator pour des interfaces en QT
  
 +Terminal ​
 ===== Installation ===== ===== Installation =====
-==== Python 2 ==== 
-Python 2 est installé par défaut, il suffit de taper ''​python''​ dans un terminal pour accéder à l'​interpréteur. 
- 
 ==== Python 3 et Ubuntu ==== ==== Python 3 et Ubuntu ====
-=== Ubuntu 14.04 et 16.04 === 
  
-La dernière version (3.6) n'est pas dans les dépots de la dernière LTS 16.04 (ni de la précédente 14.04) . La version 3.6 apporte des différences significatives par rapport à la version précédente (entre autres avec les F String) ​et peut être nécessaire.+=== Ubuntu 18.04 et suivant ===
  
-Pour installer ​Python 3.6 avec Ubuntu 16.04, il faut ajouter un ppa : +Ubuntu [[:18.04]] est livrée avec //Python 3.6// par défaut, il suffit de taper ''​python3''​ pour l'​invoquer.\\ 
-  * soit  ​''​jonathonf/python-3.6''​ +Sous [[:focal]] c'​est ​//​Python ​3.8//, accessible avec ''​python''​, python 2 n'étant plus installé par défaut !. 
-  * soit ''​deadsnakes/​ppa'​'+
  
-Puis on installe ​Python ​3.6.+==== Python ​2 ==== 
 +Python 2 est installé par défaut jusqu'​à [[:Bionic]] (version 2.7), il suffit de taper ''​python''​ dans un terminal pour accéder à l'​interpréteur.
  
-Les commandes complètes avec, par exemple, ​//jonathon// ppa :+<note warning> Python 2.7 est en fin de vie depuis le 1er janvier 2020. Il est recommandé de passer à Python 3 car Python 2 n'est plus supporté. Une future version du PIP abandonnera la prise en charge de Python 2.7. Plus de détails sur le support de Python 2 dans PIP : https://PIP.PYPA.IO/fr/Latest/​Development/​release-process/#​python-2-support </​note>​
  
-<​code>​ +==== Les modules ==== 
-$ sudo add-apt-repository ppa:​jonathonf/​python-3.6 +Il faut souvent ajouter des modules (bibliothèques) à l'​installation de base. Cela peut-être fait via les suites d'​outils ​[[:python#​anaconda]] ou [[:​python#​miniconda]] évoquées ci-dessousmais si vous n'avez besoin que de quelques modules, il est possible ​de les ajouter avec le gestionnaire de paquets python ​[[wpfr>​Pip_(gestionnaire_de_paquets)|PIP]]par exemple, pour installer le module PySerial ​(communication série
-$ sudo apt update +<​code ​bash>pip install pyserial<​/code> 
-$ sudo apt install python3.6  +Pour lister les modules installés ​
-</​code>​ +<code bash>pip list</codeOn peut ajouter l'option ​//--local// pour ne lister que ceux installés localement (dans //$USER/.local/bin//)\\ 
- +Sans l'​option ci-dessusil y en a beaucoupaussi un //pipe// avec grep peut être utile !<code bash>pip list | grep pyserial</​code>​
-Pour invoquer l'​interpréteur,​ il faut taper ''​python3''​ ou ''​python3.6''​ ! +
- +
-=== Ubuntu 17.04 === +
-Pour //​Ubuntu ​[[:17.04]]//, //Python 3.6// est proposé dans le dépôt universedonc si ce dépôt est activé, il suffit ​de taper : +
-<​code>​ +
-$ sudo apt install python3.6  +
-</​code>​ +
- +
-=== Ubuntu 17.10 === +
- +
-Ubuntu ​[[:17.10]] est livré avec //Python 3.6// par défautil suffit de taper ''​python3'' ​pour l'​invoquer. +
- +
-=== Correction bug apt-add-repository ​ === +
- +
-Après avoir installé Python 3.6 (FIXME sur quelle version d'​ubuntu?​), il est possible d'​avoir une erreur en exécutant ''​apt-add-repository''​ : +
- +
-<​code>​ +
-$ sudo apt-add-repository 'deb http://​liveusb.info/​multisystem/​depot all main' +
-Traceback (most recent call last)+
-  File "/​usr/​bin/​apt-add-repository",​ line 11, in <module> +
-    from softwareproperties.SoftwareProperties import SoftwareProperties,​ shortcut_handler +
-  File "/usr/​lib/​python3/​dist-packages/​softwareproperties/​SoftwareProperties.py",​ line 27, in <module> +
-    import apt_pkg +
-ModuleNotFoundError:​ No module named 'apt_pkg'​ +
-Error in sys.excepthook:​ +
-Traceback (most recent call last): +
-  File "/usr/lib/​python3/​dist-packages/​apport_python_hook.py",​ line 63, in apport_excepthook +
-    from apport.fileutils import likely_packaged,​ get_recent_crashes +
-  File "/​usr/​lib/​python3/​dist-packages/apport/__init__.py",​ line 5, in <​module>​ +
-    from apport.report import Report +
-  File "/usr/lib/python3/​dist-packages/​apport/​report.py", line 30, in <​module>​ +
-    import apport.fileutils +
-  File "/usr/lib/python3/​dist-packages/​apport/​fileutils.py",​ line 23, in <​module>​ +
-    from apport.packaging_impl import impl as packaging +
-  File "/​usr/​lib/​python3/​dist-packages/​apport/​packaging_impl.py"​line 23in <​module>​ +
-    import apt +
-  File "/usr/lib/python3/dist-packages/​apt/​__init__.py",​ line 23, in <module> +
-    import apt_pkg +
-ModuleNotFoundError:​ No module named '​apt_pkg'​ +
-</​code>​ +
- +
-Il manque un fichier ''/​usr/​lib/​python3/​dist-packages/​apt_pkg.so''​ ! Il suffit de faire un lien symbolique avec le fichier ''​apt_pkg.cpython-*.so''​ dans le répertoire ''/​usr/​lib/​python3/​dist-packages''​.+
 ==== IDLE 3.6 ==== ==== IDLE 3.6 ====
 Pour installer IDLE en version //Python 3.6// (si on a déjà installé Python en 3.6), il suffit d'​installer ''​idle-python3.6''​ et on l'​exécute en utilisant ce même nom. Pour installer IDLE en version //Python 3.6// (si on a déjà installé Python en 3.6), il suffit d'​installer ''​idle-python3.6''​ et on l'​exécute en utilisant ce même nom.
Ligne 158: Ligne 112:
 Voici les instructions pour installer iPython (dans une version récente) sous 16.04, avec ''​pip''​ : \\ Voici les instructions pour installer iPython (dans une version récente) sous 16.04, avec ''​pip''​ : \\
 (la première ligne installe pip3) (la première ligne installe pip3)
-<​code>​+<​code ​bash>
 $ sudo apt install python3-pip $ sudo apt install python3-pip
 $ pip3 install --upgrade pip $ pip3 install --upgrade pip
Ligne 172: Ligne 126:
 <​code>​conda update anaconda-navigator </​code>​ <​code>​conda update anaconda-navigator </​code>​
  
 +Attention, l'​installation d'​Anaconda peut entrer en conflit avec la version système de Python et ainsi causer problème avec certaines applications. Des problèmes ont été rencontrés avec les applications suivantes:
 +
 +    * [[hplip#​mot_de_passe_root_demande|hplip]]
 ==== Miniconda ==== ==== Miniconda ====
-Pour limiter le nombre de paquets ou n'​installer que le nécessaire,​ il existe aussi [[https://​conda.io/​miniconda.html|Miniconda]] qui n'​installe que le gestionnaire de paquet //conda//+Pour limiter le nombre de paquets ou n'​installer que le nécessaire,​ il existe aussi [[miniconda|Miniconda]] qui n'​installe que le gestionnaire de paquet //conda//
  
 ===== Utilisation ===== ===== Utilisation =====
Ligne 201: Ligne 158:
  
   * [[wpfr>​Python_(langage)|Python ​ sur wikipedia]] [fr]   * [[wpfr>​Python_(langage)|Python ​ sur wikipedia]] [fr]
-  * [[http://​www.afpy.org/​|Association francophone Python]] [fr]+  * [[https://​www.afpy.org/​|Association francophone Python]] [fr]
   * [[http://​wikipython.flibuste.net/​|Wiki Python francophone]] [fr]   * [[http://​wikipython.flibuste.net/​|Wiki Python francophone]] [fr]
-  * [[http://​www.python.org/​|Site officiel]] [en] +  * [[https://​www.python.org/​|Site officiel]] [en] 
-  * [[http://​www.howopensource.com/​2011/​05/​how-to-install-and-manage-different-versions-of-python-in-linux/​|How to install and manage different versions of Python in Linux]] [en]+  * [[https://​www.howopensource.com/​2011/​05/​how-to-install-and-manage-different-versions-of-python-in-linux/​|How to install and manage different versions of Python in Linux]] [en]
   * [[http://​python.lycee.free.fr/​|Débuter avec Python au lycée]] [fr]   * [[http://​python.lycee.free.fr/​|Débuter avec Python au lycée]] [fr]
 +  * [[https://​frederic-lang.developpez.com/​tutoriels/​python/​python-de-zero/​|Tutoriel complet sur developpez.com]] [fr]
   * [[https://​www.fun-mooc.fr/​courses/​course-v1:​UCA+107001+session01/​about | MOOC python 3 Inria sur France Universités Numériques]] [fr]   * [[https://​www.fun-mooc.fr/​courses/​course-v1:​UCA+107001+session01/​about | MOOC python 3 Inria sur France Universités Numériques]] [fr]
-  * [[http://fr.openclassrooms.com/​informatique/cours/apprenez-a-programmer-en-python]] [fr]+  * [[https://​openclassrooms.com/​en/courses/7168871-apprenez-les-bases-du-langage-python]] [fr]
   * [[http://​www.jchr.be/​python/​manuel.htm]] [fr]   * [[http://​www.jchr.be/​python/​manuel.htm]] [fr]
-  * [[http://​inforef.be/​swi/​python.htm|Apprendre à programmer avec Python"​ - Gérard Swinnen]] [fr] librement téléchargeable à l'url: [[http://​inforef.be/​swi/​download/​apprendre_python3_5.pdf]] (version janv. 2012) +  * [[https://​inforef.be/​swi/​python.htm|Apprendre à programmer avec Python"​ - Gérard Swinnen]] [fr] librement téléchargeable à l'url: [[https://​inforef.be/​swi/​download/​apprendre_python3_5.pdf]] (version janv. 2012) 
-  * [[http://www.swaroopch.com/​notes/​python/]] [en+  * [[https://python.swaroopch.com/​]] [en]
-  * [[http://​www.esi.umontreal.ca/​~mousseau/​phy1234/​notes/​notes_1.html]] [fr]+
   * [[http://​ipython.org/​]]   * [[http://​ipython.org/​]]
 +  * [[https://​github.com/​exaloop/​codon|Codon]] [en] ou comment compiler et accélérer du code python ! et sa [[https://​docs.exaloop.io/​codon|documentation]] [en]
 --------- ---------
  
-//​[[:​utilisateurs:​draco31.fr|draco31.fr]] ​Le 25/06/201022:23//+//Contributeurs : [[:​utilisateurs:​draco31.fr|draco31.fr]]; Traduction des acronymescorrection grammaticale [[:utilisateurs:​eagle08|René Stoecklin]];​ [[:​utilisateurs:​bcag2]]//
  • python.1519298783.txt.gz
  • Dernière modification: Le 22/02/2018, 12:26
  • par bcag2