« PYTHON - Les bases » : différence entre les versions
De PedroWiki
Aller à la navigationAller à la recherche
imported>Jules |
imported>Jules |
||
(16 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 8 : | Ligne 8 : | ||
* [https://www.python.org/about/gettingstarted/ Python pour les débutants]. | * [https://www.python.org/about/gettingstarted/ Python pour les débutants]. | ||
* [https://www.learnpython.org/ Learn Python]. | * [https://www.learnpython.org/ Learn Python]. | ||
* [https://github.com/gto76/python-cheatsheet Python CheatSheet]. | |||
* [https://pythontutor.com/ Python Tutor]. | |||
* [https://futurecoder.io/ Future Coder]. | |||
= Généralités = | = Généralités = | ||
Ligne 15 : | Ligne 18 : | ||
* Pas de déclaration des variables nécessaire. | * Pas de déclaration des variables nécessaire. | ||
* Indentation "standard" python: 4 espaces. | * Indentation "standard" python: 4 espaces. | ||
* Indentation importante pour l'évaluation des boucles, besoin d'une indentation cohérente. | |||
= Le couteau suisse: Print = | = Le couteau suisse: Print = | ||
Ligne 49 : | Ligne 53 : | ||
== Chaînes de caractères / strings == | == Chaînes de caractères / strings == | ||
=== Généralités === | |||
* Délimitées par des simples quotes ' ou des doubles quotes ". | * Délimitées par des simples quotes ' ou des doubles quotes ". | ||
* L'utilité des doubles quotes est de pouvoir inclure des apostrophes dans ses chaînes. | * L'utilité des doubles quotes est de pouvoir inclure des apostrophes dans ses chaînes. | ||
* Les chaînes sont "immutables" (par leurs méthodes). Il faut assigner le retour des méthodes à des variables intermédiaires. | |||
=== Opérateurs === | |||
* On peut utiliser l'opérateur '''+''' pour concaténer des chaines. | |||
string = "Hello" + " " + "world" | |||
* On peut utiliser l'opérateur '''*''' pour "multiplier" une chaîne. | |||
string = "Hello" * 5 | |||
=== Formatage === | |||
* Python utilise une syntaxe de formatage de chaînes de caractère similaire à celle du langage C, pour générer de nouvelles chaînes basées sur: | |||
** Une chaîne de formatage, mélangeant du texte et des spécifieurs d'arguments (%s, %d...) | |||
** Un opérateur '''%''' qui va instancier les variables d'un tuple à la place des spécifieux d'arguments. | |||
nom = "Jules" | |||
age = 46 | |||
print("Hello %s!" % nom) | |||
print("Are we sure %s is %d?" % (nom,age)) | |||
* '''NB:''' on peut utiliser le spécifieur %s sur un object de type liste. L'affichage fait alors appel à la méthode repr de l'objet liste pour l'afficher sous forme de chaine. | |||
myList = [1,2] | |||
print("Ma liste: %s" % myList) | |||
* les spécifieurs d'arguments les plus basiques sont: | |||
** '''%s''': Une chaîne ou n'importe quel objet ayant une représentation de type chaîne. | |||
** '''%d''': Un entier. | |||
** '''%f''': Un flottant. | |||
** '''%.<number of digits>f''': Un flottant avec un nombre fixe de chiffres après la virgule. | |||
** '''%x/%X''': Représentation Hexadécimale d'un entier (minuscule/majuscule). | |||
=== Méthodes === | |||
Les objects strings embarquent des méthodes: | |||
machaine.upper() | |||
machaine.lower() | |||
== Nombres == | == Nombres == | ||
Ligne 76 : | Ligne 123 : | ||
* Les listes peuvent contenir autant d'item qu'on le souhaite. | * Les listes peuvent contenir autant d'item qu'on le souhaite. | ||
* L'accès à un index qui n'existe pas provoque une erreur/une exception. | * L'accès à un index qui n'existe pas provoque une erreur/une exception. | ||
* On peut utiliser l'opérateur '''+''' pour concaténer 2 listes. | |||
list1 = [1,2,3] | |||
list2 = [4,5,6] | |||
print(list1 + list2) | |||
* On peut utiliser l'opérateur '''*''' pour "multiplier" une liste. | |||
list = [1,2,3] | |||
print(list * 3) | |||
<u>Syntaxe:</u> | <u>Syntaxe:</u> | ||
Ligne 92 : | Ligne 149 : | ||
Exception sur accès à un index inexistant: | Exception sur accès à un index inexistant: | ||
IndexError: list index out of range | IndexError: list index out of range | ||
Longueur d'une liste: | |||
len(AList) | |||
Méthode de comptage d'occurence d'un élément dans une liste: | |||
x = object() | |||
x_list = [x] * 10 | |||
if x_list.count(x) == 10: | |||
print("La liste contient 10 éléments x") | |||
= Operators = | = Operators = | ||
Ligne 125 : | Ligne 191 : | ||
* Opérateur: '''and''' | * Opérateur: '''and''' | ||
== Opérateurs arithmétiques == | |||
* Somme: '''+''' | |||
number = 1 + 2 | |||
* Produit: '''*''' | |||
number = 2 * 3 | |||
* Puissance/power: '''**''' | |||
number = 2 ** 3 | |||
* Division: '''/''' | |||
number = 4 / 2 | |||
* [https://fr.wikipedia.org/wiki/Modulo_(op%C3%A9ration) Modulo]: '''%''' | |||
number = 11 % 3 | |||
* '''ATTENTION:''' ces opérateurs ont une priorité d'évaluation entre eux. | |||
= Structures de contrôle = | = Structures de contrôle = | ||
Ligne 132 : | Ligne 222 : | ||
<u>Usage:</u> | <u>Usage:</u> | ||
if (condition): | if (condition): | ||
action1 | |||
else: | |||
action2 | |||
ou | |||
if (condition): | |||
action1 | |||
elif condition2: | |||
action2 | |||
... | |||
else: | |||
default_action | |||
<u>Example:</u> | <u>Example:</u> | ||
Ligne 156 : | Ligne 258 : | ||
for x in AList: | for x in AList: | ||
print(x) | print(x) | ||
[[Category:Python]] | |||
[[Category:Language]] | |||
[[Category:Scripting]] | |||
[[Category:Devops]] |
Dernière version du 25 juin 2024 à 15:45
Introduction
Cet article sert de bloc note lors de mon apprentissage du langage Python. Il a plus vocation à être un pense bête qu'un vrai support de formation.
Liens utiles
Généralités
- Langage fortement objet.
- Non typé.
- Pas de déclaration des variables nécessaire.
- Indentation "standard" python: 4 espaces.
- Indentation importante pour l'évaluation des boucles, besoin d'une indentation cohérente.
Le couteau suisse: Print
- La BASE: Commande d'affichage.
Usage:
print("chaine de caractère")
ou
print(variable)
- Affichage d'une variable en forçant le type:
Usage:
stringVar = "toto" print("String: %s" % stringVar) intVar = 1 print("Int: %d" % intVar) floatVar = 15.0 print("Float: %f" % floatVar)
Variables
Affectation
Simple:
myvar = value print(myvar)
Multiple:
varA, varB = 1, 2 print(varA) print(varB)
Chaînes de caractères / strings
Généralités
- Délimitées par des simples quotes ' ou des doubles quotes ".
- L'utilité des doubles quotes est de pouvoir inclure des apostrophes dans ses chaînes.
- Les chaînes sont "immutables" (par leurs méthodes). Il faut assigner le retour des méthodes à des variables intermédiaires.
Opérateurs
- On peut utiliser l'opérateur + pour concaténer des chaines.
string = "Hello" + " " + "world"
- On peut utiliser l'opérateur * pour "multiplier" une chaîne.
string = "Hello" * 5
Formatage
- Python utilise une syntaxe de formatage de chaînes de caractère similaire à celle du langage C, pour générer de nouvelles chaînes basées sur:
- Une chaîne de formatage, mélangeant du texte et des spécifieurs d'arguments (%s, %d...)
- Un opérateur % qui va instancier les variables d'un tuple à la place des spécifieux d'arguments.
nom = "Jules" age = 46 print("Hello %s!" % nom) print("Are we sure %s is %d?" % (nom,age))
- NB: on peut utiliser le spécifieur %s sur un object de type liste. L'affichage fait alors appel à la méthode repr de l'objet liste pour l'afficher sous forme de chaine.
myList = [1,2] print("Ma liste: %s" % myList)
- les spécifieurs d'arguments les plus basiques sont:
- %s: Une chaîne ou n'importe quel objet ayant une représentation de type chaîne.
- %d: Un entier.
- %f: Un flottant.
- %.<number of digits>f: Un flottant avec un nombre fixe de chiffres après la virgule.
- %x/%X: Représentation Hexadécimale d'un entier (minuscule/majuscule).
Méthodes
Les objects strings embarquent des méthodes:
machaine.upper() machaine.lower()
Nombres
Integers
number1 = 1 print(number1)
Floats
number2 = float(7) number3 = 7.2 print(number2) print(number3)
Structures de données
Listes
Généralités:
- Les listes sont assez similaire à des tableaux.
- Les listes peuvent contenir tout type de variable.
- Les listes peuvent contenir autant d'item qu'on le souhaite.
- L'accès à un index qui n'existe pas provoque une erreur/une exception.
- On peut utiliser l'opérateur + pour concaténer 2 listes.
list1 = [1,2,3] list2 = [4,5,6] print(list1 + list2)
- On peut utiliser l'opérateur * pour "multiplier" une liste.
list = [1,2,3] print(list * 3)
Syntaxe:
Initialisation:
AList = []
ou
AList = [1,2,3]
Méthode d'ajout d'un élément dans la liste:
AList.append(<element>)
Accès à un élément:
print(AList[0])
Exception sur accès à un index inexistant:
IndexError: list index out of range
Longueur d'une liste:
len(AList)
Méthode de comptage d'occurence d'un élément dans une liste:
x = object() x_list = [x] * 10 if x_list.count(x) == 10: print("La liste contient 10 éléments x")
Operators
Comparaison
- Opérateur: ==
Sum / Concatenation
- Opérateur: +
Example:
one = 1 two = 2 three = one + two print(three)
ou
str1 = "Hello" str2 = "World" strFull = str1 + " " + str2 print(strFull)
- ATTENTION cela implique qu'on ne peut pas mélanger les variables numbers et strings lors de l'usage de cet opérateur.
Example non fonctionnel:
one = 1 two = 2 string = "chaine" print(one + two + string)
Logical AND
- Opérateur: and
Opérateurs arithmétiques
- Somme: +
number = 1 + 2
- Produit: *
number = 2 * 3
- Puissance/power: **
number = 2 ** 3
- Division: /
number = 4 / 2
- Modulo: %
number = 11 % 3
- ATTENTION: ces opérateurs ont une priorité d'évaluation entre eux.
Structures de contrôle
If
Usage:
if (condition): action1 else: action2
ou
if (condition): action1 elif condition2: action2 ... else: default_action
Example:
if stringVar == "Value": print("Chaine: %s" % stringVar)
Conditions multiples:
numVar = 3 if isinstance(numVar, int) and numVar == 3: print("Valeur numérique: %d" % numVar)
For
Usage:
for x in <values>: print x
Example:
AList = [] AList.append(1) AList.append(2) AList.append(3) for x in AList: print(x)