PYTHON

Commentaires

Commenter une ligne
# Commentaire
Commenter sur plusieurs lignes
'''
Commentaire
multi-lignes
'''

Variables

Affecter une valeur de texte à une variable
ma_variable = "bonjour"
Affecter une valeur numérique à une variable
ma_variable = 34
Convertir une variable en un entier
mon_entier = int(ma_chaine)
Convertir une variable en une chaîne de caractère
ma_chaine = str(mon_entier)

Entrées et sorties

Afficher à l’écran du texte
print("Bonjour")
Afficher à l’écran une variable
print(ma_variable)
Afficher à l’écran du texte et une variable (concaténation)
print("Bonjour", ma_variable)
ou
print(f"Bonjour {ma_variable} !")
Ajouter une ligne vide
print()
Demander du texte et l'enregistrer dans une variable
var = input("Quel est le texte ? ")
Demander un nombre et l'enregistrer dans une variable
var = int(input("Quel est le nombre ? "))

Conditions

Afficher un texte si une condition est validée
if a == 3:
    print("a vaut 3")
Tester plusieurs cas à la suite
if a == 3:
    print("a vaut 3")
elif a == 5:
    print("a vaut 5")
else:
    print("a ne vaut ni 3 ni 5")
Tester plusieurs conditions avec ET
if a > 3 and a < 9:
    print("a est entre 3 et 9")
Tester plusieurs conditions avec OU
if a > 3 or a == 0:
    print("soit a est nul, soit > 3")

Boucles for

Afficher 0, 1 et 2 grâce à une boucle "pour"
for i in range(0,3):
    print(i)
Afficher "Tour n° x / 5" grâce à une boucle "pour"
total = 5
for compteur in range(total):
    print("Tour n°", compteur, "sur", total)

Boucles while

Afficher 0, 1 et 2 grâce à une boucle "while"
i = 0
while i < 3:
    print(i)
    i = i + 1
Boucle tant qu'il n'y a pas le bon mot de passe
tentative = ""
while tentative != "secret":
    tentative = input("Entrer le mot de passe: ")

Opérations

Addition de deux variables (ou concaténation de deux chaînes)
a + b
Addition de deux nombres
54 + 68
Soustraction
a - b
Multiplication
a * b
Division
a / b
Puissance
a ** b
Compteur (positif)
i = 0
i += 1
ou
i = 0
i = i + 1

Logique

Égalité entre a et b
a == b
a est supérieur à b
a > b
a est supérieur ou égal à b
a >= b
a est inférieur à b
a < b
a est inférieur ou égal à b
a <= b
a est différent de b
a != b
a est inclus dans b
a in b
a n'est pas inclus dans b
a not in b

Modules

Importer un module Au début du programme :
import nom_module
Utiliser une fonction d'un module
nom_module.fonction()
Importer les fonctions de hasard
import random
Tirer un nombre entier au sort situé entre a et b
random.randint(a,b)
Sélectionner un élément au hasard dans une liste
random.choice(ma_liste)

Fonctions

Définir une fonction qui affiche "Salut !"
def bonjour():
    print("Salut !")
Définir une fonction qui fait une addition et retourne le résultat
def addition(a,b):
    return a + b
Appeler les fonctions
bonjour()
ou
print(addition(5,6)) # Affiche le résultat de l'addition

Listes

Créer une liste vide
ma_liste = []
ou
ma_liste = list()
Créer une liste
ma_liste = [0,"a"]
Accéder au i-ème élément d'une liste
ma_liste[i]
Afficher le i-ème élément d'une liste
print(ma_liste[i])
Ajouter un élément
ma_liste.append("Phrase à ajouter")
ou
ma_liste.append(ma_variable)
Supprimer un élément
ma_liste.remove("Phrase à supprimer")
ou
ma_liste.remove(ma_variable)
Calculer la taille d'une liste
len(ma_liste)
Trouver la plus petite valeur
min(ma_liste)
Trouver la plus grande valeur
max(ma_liste)
Calculer la somme des nombres d’une liste
sum(ma_liste)
Parcourir une liste
for element in ma_liste:
	print(element)
ou
for i in range(len(ma_liste)):
	print(ma_liste[i])
Vérifier si un élément est dans une liste
if element in ma_liste:
	print(element, "est présent !")
Tirer au sort un élément à l’aide du module random
import random
tirage_sort = random.choice([1,2,3,4,5])

Tableaux

Créer une matrice / un tableau
mon_tableau = [[1,2],[3,4]] # liste de liste
Accéder à la i-ème ligne de la j-ème colonne d'un tableau
mon_tableau[i][j]

Les chaînes de caractères (texte)

Créer un texte vide
mon_texte = ""
Créer un texte
mon_texte = “bonjour”
Accéder au i-ème caractère d’un texte
mon_texte[i]
Afficher le i-ème caractère
print(mon_texte[i])
Calculer la taille d’un texte
len(mon_texte)
Parcourir un texte caractère par caractère
for caractere in mon_texte:
	print(caractere)
Vérifier si un élément est dans un texte
if mot in mon_texte:
	print(mot,"est présent !")
Enlève tous les caractères blanc (espace, tabulation, retour à la ligne, etc.) au début et à la fin d’un texte
texte.strip()
Convertir un caractère en code numérique
code = ord(caractere)
Remarque : ord("a") vaut 97 et ord("A") vaut 65
Convertir un code numérique en caractère
caractere = chr(code)

Fichiers

Ouvrir un fichier
open("test.txt", mode, encoding="utf-8")
avec mode qui peut prendre plusieurs valeurs : "r" pour lire, "w" pour écrire en écrasant, "a" pour ajouter, "r+" pour lire / écrire
Fermer un fichier
mon_fichier.close()
Gestion automatique d’ouverture et fermeture des fichiers
with open(...) as mon_fichier:
    instructions
Lire un fichier
mon_contenu = mon_fichier.read()
Lire les lignes d'un fichier et enregistrer dans une liste
ma_liste = mon_fichier.readlines()
Parcourir chaque ligne du fichier
for ligne in fichier:
    instructions
Ecrire dans un fichier
mon_fichier.write(mon_contenu)
Ecrire une liste comme les lignes d'un fichier
mon_fichier.writelines(ma_liste)

TABLEUR

Opérations de base

Addition=A1+B1
Soustraction=A1-B1
Multiplication=A1*B1
Division=A1/B1
Puissance=A1^2
Priorité des opérations=(A1+B1)*C1

Fonctions

Somme d'une plage=SOMME(A1:A10)
Moyenne d'une plage=MOYENNE(A1:A10)
Valeur minimale=MIN(A1:A10)
Valeur maximale=MAX(A1:A10)
Condition
=SI(condition ; si_vrai ; si_faux)
=SI(A1>10 ; "Oui" ; "Non")

Références absolues ($)

TypeExempleComportement lors d'une copie
Référence relative=A1Ligne et colonne s'adaptent automatiquement
Référence absolue=$A$1Ligne et colonne restent fixes
Colonne fixe=$A1Colonne fixe, ligne s'adapte
Ligne fixe=A$1Ligne fixe, colonne s'adapte

BASES DE DONNÉES

Modélisation

Concepts

EntitéType d'objet/concept réel (ex : SPORTIF)
AttributCaractéristique (ex : NomSportif)
AssociationLien entre deux entités
Cardinalités(0,1), (1,1), (0,N), (1,N)
ou
0..1, 1, 0..*, 1..*

Traduction de modèle conceptuel (MCD) en modèle logique (MLD)

Objet→ Ligne ou enregistrement
Entité→ Table
Attribut→ Colonne ou champ
Association (sauf dans le cas N,N)→ Ajout de clé étrangère dans la table correspondante

SQL

Commentaires

Commenter sur une ligne
-- Mon commentaire
Commenter sur plusieurs lignes
/* Un commentaire
   un peu plus long */

Types de données

INTEGERNombre entier
FLOATNombre décimal (pouvant contenir des chiffres après la virgule))
VARCHAR(x)Texte de longueur variable. Par exemple VARCHAR(100) donne une chaîne de maximum 100 caractères
DATEDate au format prédéfini
DATETIMEDate + heure
TEXTChaîne longue de caractères (par exemple un paragraphe)
BOOLEANDonnée booléenne (vrai / faux)

Requêtes générales

Observer la structure de données
PRAGMA table_info(table);

Requêtes SELECT

Sélectionner toutes les données d'une table
SELECT *
FROM table
Sélectionner certaines colonnes d'une table
SELECT champ1, champ2
FROM table
Sélectionner certaines données filtrées avec des conditions
SELECT *
FROM table
WHERE condition
Renommer une colonne (alias)
SELECT champ1 AS "Nouveau nom"
FROM table
Afficher les valeurs distinctes d’un champ
SELECT DISTINCT champ
FROM table

Autres clauses

Utilité Mot-clé Exemple
Trier les résultats
ORDER BY
ORDER BY champ ASC
ou
ORDER BY champ DESC
Limiter le nombre de résultats retournés
LIMIT
LIMIT 10 -- retourne les 10 premiers résultats
Regrouper les lignes qui ont les mêmes valeurs dans un champ donné
GROUP BY
SELECT champ1, AVG(champ2)
FROM table
GROUP BY champ1;

Jointures

Jointure implicite
SELECT table_A.champ1, table_B.champ0
FROM table_A, table_B
WHERE table_A.cle_etrangere = table_B.cle_primaire
Jointure explicite
SELECT table_A.champ1, table_B.champ0
FROM table_A JOIN table_B
ON table_A.cle_etrangere = table_B.cle_primaire

Opérateurs de comparaison

Utilité Mot-clé Exemple
Vérifie l'égalité entre deux valeurs
=
WHERE champ = 18;
Vérifie que deux valeurs sont différentes
!=
WHERE champ != 'txt';
Compare des valeurs numériques ou alphabétiques (inférieur, supérieur, inférieur ou égal, etc.)
<, >, <=, >=
WHERE champ > 18;
Recherche une correspondance partielle dans une chaîne de caractères (utilise les caractères jokers % et _)
LIKE
WHERE nom LIKE '%NA';
(se termine par "NA")
Exclut les correspondances partielles
NOT LIKE
WHERE champ NOT LIKE '%gmail.com;
Vérifie si une valeur fait partie d'une liste donnée
IN
WHERE champ IN ('txt', 'Txt', 'TXT');
Vérifie qu'une valeur ne fait pas partie d'une liste donnée
NOT IN
WHERE champ NOT IN (18, 19, 20);
Opérateur logique "ET"
AND
SELECT *
FROM table
WHERE id = 1 AND etat = "bon";
Opérateur logique "OU"
OR
SELECT *
FROM table
WHERE id = 1 OR etat = "bon";

Fonctions d'agrégation

Utilité Mot-clé Exemple
Nombre de lignes
COUNT()
SELECT COUNT(champ) FROM table;
Moyenne
AVG()
SELECT AVG(champ) FROM table;
Somme de valeurs
SUM()
SELECT SUM(champ) FROM table;
Valeur minimale
MIN()
SELECT MIN(champ) FROM table;
Valeur maximale
MAX()
SELECT MAX(champ) FROM table;

WEB

HTML

Commentaires

Commenter
<!-- Commentaire -->

Structure principale d'une page

Définir le type de document
<!DOCTYPE html>
Balise principale HTML
<html>Contenu de la page</html>
Balise principale d'en-tête
<head>
</head>
Spécifier l'encodage UTF-8
Dans la balise <head>
<meta charset="UTF-8">
Spécifier le titre d'une page
Dans la balise <head>
<title>Titre de la page</title>
Corps de la page
<body>
</body>

Texte

Titre niveau 1
<h1>Texte du titre</h1>
Titre niveau 2
<h2>Texte du titre</h2>
Paragraphe
<p>Texte du paragraphe</p>
Division
<div>Texte du paragraphe</div>
Gras — texte important Texte important :
<strong>Mot en gras</strong>
Texte sans importance :
<b>Mot en gras</b>
Retour à la ligne
<br>

Classes et identifiants

Attribuer une classe à un élément
<balise class="ma_classe">Contenu</balise>
Exemple sur une balise <p> :
<p class="ma_classe">Mon texte</p>
Exemple sur une balise <div> :
<div class="le_nom_de_ma_classe">Mon texte</div>
Attribuer un identifiant à un élément
<balise id="mon_element">Contenu</balise>
Exemple sur une balise <p> :
<p id="mon_element">Mon texte</p>
Exemple sur une balise <img> :
<img id="mon_logo" src="logo.png" />

Liens

Lien vers un site externe
<a href="https://monsite.ch">Texte du lien</a>
Lien vers une page interne
<a href="page.html">Texte du lien</a>
Nouvel onglet (target)
<a href="page.html" target="_blank">Texte du lien</a>
Lien vers une ancre
<a href="#ancre">Lien sur l'ancre</a>
Remarque : l'ancre doit avoir été définie avec un identifiant, comme par exemple :
<h2 id="ancre">Titre de la section</h2>

Images

Insérer une image depuis le dossier photos
<img src="photos/monimage.jpg" alt="description facultative">
Insérer une image depuis un site externe
<img src="https://exemple.ch/image.jpg">

Listes et tableaux

Liste ordonnée (numérotée)
<ol>
    <li>Entrer</li>
    <li>Regarder</li>
    <li>Sortir</li>
</ol>
Liste non ordonnée (à puces)
<ul>
    <li>Salade</li>
    <li>Tomates</li>
    <li>Oignons</li>
</ul>
Tableau 3 lignes × 2 colonnes
<tr> = ligne · <td> = cellule
<table>
    <tr>
        <td>Ligne 1 Colonne A</td>
        <td>Ligne 1 Colonne B</td>
    </tr>
    <tr>
        <td>Ligne 2 Colonne A</td>
        <td>Ligne 2 Colonne B</td>
    </tr>
    <tr>
        <td colspan="2">Ligne 3</td>
    </tr>
</table>
Étendre sur deux colonnes
À ajouter dans la <td>
colspan="2"

CSS

Commentaires

Commentaire
/* Commentaire */

Appliquer un code CSS

Méthode 1 — Feuille de style externe
Dans la balise <head>
<link rel="stylesheet" href="design.css">
Méthode 2 — Style interne
Dans la balise <head>
<head>
    <style>
        règle_de_style1
        règle_de_styleN
    </style>
</head>
Méthode 3 — Style en ligne
Directement dans une balise
<img style="width:6px; height:3px;" src="image.jpg" />

Syntaxe générale pour appliquer des styles

Sélecteur de type
(appliqué à toutes les balises de cette catégorie)
p {
  font-size: 2pt;
  color: #FF0000;
  font-family: arial;
}
Sélecteur de classe
Point devant le nom
.chapitre {
  font-size: 2pt;
  color: #FF0000;
  font-family: arial;
}
Sélecteur d'identifiant
# devant le nom
#logo {
  width: 300px;
  height: 200px;
}

Sélecteurs particuliers

Sélecteur combiné
cible les balises <a> dans un élément de classe .gauche
.gauche a {
  color: red;
}
Survol de la souris
p:hover {
  color: red;
}
Modifier les liens
a:link    { color: #0000FF; } /* non visité */
a:visited { color: #0000CC; } /* visité */
a:hover   { color: #66AAFF; } /* survolé */

Texte

AttributExemple de codeValeurs possibles
Police de caractère
font-family: arial;
nom d'une police (ex : tahoma, verdana)
Taille
font-size: 20pt;
points (ex : 20pt)
pourcentage (ex : 80%)
valeur relative (ex : 2em)
Alignement horizontal
text-align: center;
left (gauche) · right (droite) · center (centre)
Alignement vertical
dans une cellule
vertical-align: middle;
top (en haut) · bottom (en bas) · middle (centre)
sub (indice) · super (exposant)
Interligne
line-height: 30px;
pixels (ex : 30px)
pourcentage (ex : 120%)
valeur relative (ex : 2em)
Gras
font-weight: bold;
normal · bold (gras)
Italique
font-style: italic;
italic (italique)
Décoration
text-decoration: underline;
underline (soulignement) · none (aucun)
overline (surlignement) · line-through (barré)
Casse
text-transform: lowercase;
lowercase (minuscules) · uppercase (majuscules)
capitalize (1re lettre majuscule)

Code couleurs

Code RGB
rgb(R,V,B)
où R, V, B sont les composantes rouge, vert et bleu
R, V et B peuvent prendre les valeurs entre 0 et 255
Exemple rouge : rgb(255,0,0)
Code hexadécimal
#RRVVBB
où RR, VV et BB sont les composantes rouge, vert et bleu
RR, VV et BB peuvent prendre les valeurs entre 00 et FF
Les chiffres vont de 0 à 9 suivis des lettres de A à F (pour 10 à 15)
Exemple rouge : #FF0000

Couleurs et fonds

Couleur de texte
color: red;
Couleur de fond
background-color: red;
Image de fond
background: url('image.jpg');

Géométrie

AttributExemple de codeValeurs possibles
Largeur
width: 300px;
pixels (ex : 30px)
pourcentage (ex : 120%)
100vw = toute la largeur
Hauteur
height: 100px;
pixels (ex : 100px)
pourcentage (ex : 120%)
100vh = toute la hauteur
Marges externes
margin: auto;       /* centrer */
margin: 10%;        /* tout */
margin-left: 10%;   /* gauche */
margin-right: 10%;  /* droite */
margin-top: 10%;    /* haut */
margin-bottom: 10%; /* bas */
pixels (ex : 30px)
pourcentage (ex : 10%)
auto (centrer)
Marges internes
padding: 10%;        /* tout */
padding-left: 10%;   /* gauche */
padding-right: 10%;  /* droite */
padding-top: 10%;    /* haut */
padding-bottom: 10%; /* bas */
pixels (ex : 30px)
pourcentage (ex : 10%)

Position et organisation

AttributExemple de codeValeurs possibles
Affichage
display: block;
block (toute la largeur)
inline (côte à côte)
Flottement
float: left;
left (gauche) · right (droite)
Chevauchement
clear: both;
left (sous flottant gauche)
right (sous flottant droit)
both (sous les deux)
Débordement
Barre de défilement en cas de dépassement des dimensions
overflow: auto;
auto (barre de défilement)

Bordures et cadres

AttributExemple de codeValeurs possibles
Bordure
épaisseur, type, couleur
border: 2px solid #333333;
solid (plein) · double · dotted (pointillé)
dashed (tirets) · outset (relief) · none (aucun)
Espace entre bordures de cellules
border-spacing: 20px;
Fusionner les bordures
border-collapse: collapse;
Coins arrondis
border-radius: 20px;
Ombre
box-shadow: 10px 10px 5px gray;
Les valeurs représentent dans l'ordre : décalage horizontal, décalage vertical, degré de flou, couleur