« Accueil » et « PYTHON - Les bases » : différence entre les pages

De PedroWiki
(Différence entre les pages)
Aller à la navigationAller à la recherche
Aucun résumé des modifications
 
imported>Jules
 
Ligne 1 : Ligne 1 :
<strong>MediaWiki a été installé.</strong>
= Introduction =


Consultez le [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents Guide de l’utilisateur] pour plus d’informations sur l’utilisation de ce logiciel de wiki.
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.


== Pour démarrer ==
= Liens utiles =
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Liste des paramètres de configuration]
 
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ Questions courantes sur MediaWiki]
* [https://www.python.org/about/gettingstarted/ Python pour les débutants].
* [https://lists.wikimedia.org/postorius/lists/mediawiki-announce.lists.wikimedia.org/ Liste de discussion sur les distributions de MediaWiki]
* [https://www.learnpython.org/ Learn Python].
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Adaptez MediaWiki dans votre langue]
* [https://github.com/gto76/python-cheatsheet Python CheatSheet].
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Apprendre comment combattre le pourriel dans votre wiki]
 
= 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.
 
=== 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).
 
== Nombres ==
 
=== Integers ===
 
number1 = 1
print(number1)
 
=== Floats ===
 
number2 = float(7)
number3 = 7.2
print(number2)
print(number3)
 
= Structures de données =
 
== Listes ==
 
<u>Généralités:</u>
* 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)
 
<u>Syntaxe:</u>
 
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: '''+'''
 
<u>Example:</u>
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.
 
<u>Example non fonctionnel:</u>
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
 
* [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 =
 
== If ==
 
<u>Usage:</u>
if (condition):
    action
 
<u>Example:</u>
if stringVar == "Value":
    print("Chaine: %s" % stringVar)
 
<u>Conditions multiples:</u>
numVar = 3
if isinstance(numVar, int) and numVar == 3:
    print("Valeur numérique: %d" % numVar)
 
== For ==
 
<u>Usage:</u>
for x in <values>:
    print x
 
<u>Example:</u>
AList = []
AList.append(1)
AList.append(2)
AList.append(3)
for x in AList:
    print(x)
 
[[Category:Python]]
[[Category:Language]]
[[Category:Scripting]]
[[Category:Devops]]

Version du 24 juin 2024 à 12:02

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.

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).

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
number = 11 % 3
  • ATTENTION: ces opérateurs ont une priorité d'évaluation entre eux.

Structures de contrôle

If

Usage:

if (condition):
    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)