1ère Générale NSI

 

Term. Générale NSI

 

Terminale STI2D SIN

Bts Ccst

Technico-commercial 3.0

[[{"title":"Python","posi":0},{"text":"
\"Python\"

 

Préambule

En 1989, le hollandais Guido van Rossum commence le développement du langage de programmation Python.

Python est un langage multiplateforme, c'est-à-dire disponible sur plusieurs architectures (compatible PC, tablettes, smartphones, ordinateur low cost Raspberry Pi...) et systèmes d'exploitation (Windows, Linux, Mac, Android...).

Le langage Python est gratuit, sous licence libre.

C'est un des langages informatiques les plus populaires avec C, C++, C#, Objective-C, Java, PHP, JavaScript, Delphi, Visual Basic, Ruby et Perl (liste non exhaustive).

Actuellement, Python en est à sa version 3.

Cependant, la version 2 est encore utilisée.
Attention : Python 2 n'est pas compatible avec Python 3 !

Que peut-on faire avec Python ?

Beaucoup de choses !

  • du calcul scientifique (librairie NumPy);
  • de l'intelligence artificielle (tensorflow);
  • des graphiques (librairie matplotlib)
  • du traitement du son, de la synthèse vocale (librairie eSpeak)
  • du traitement d'image (librairie PIL), de la vision artificielle par caméra (framework SimpleCV)
  • de la bio-informatique (librairie Biopython)
  • des applications avec interface graphique GUI (librairies TkinterPyQtwxPythonPyGTK...)
  • des jeux vidéo en 2D (librairie Pygame)
  • des applications multi-touch (framework kivy pour tablette et smartphone à écran tactile)
  • des applications Web (serveur Web Zope ; frameworks Web FlaskDjango)
  • interfacer des systèmes de gestion de base de données (librairie MySQLdb...)
  • des applications réseau (framework Twisted)
  • communiquer avec des ports série RS232 (librairie PySerial), en Bluetooth (librairie pybluez)...
  • ...

Ils existent des dizaines de milliers de librairies qui sont disponibles sur le site officiel PyPI pour nous aider à réaliser des milliards de choses.

Mon premier programme en Python

Lorsque l'on apprend un nouveau langage de programmation. il est coutumiar d'écrire son premier programme pour afficher Hello world.

L'instruction en python qui affiche hello word est

print(\"Hello world\")

 

Exécuter le programme ci-dessous et regarder le résultat dans la fenêtre de sortie Output.

"},{"code":"print(\"Hello world\")"},{"text":"Si vous avez réalisé l'activité demandée, le bouton suivant apparaîtra en bas à droite pour réaliser l'étape d'après."}],[{"title":"Exercice"},{"text":"Ensuite, modifier le programme pour qu'il affiche la traduction en français de \"Hello world\"."},{"code":"print(\"Hello world\")"},{"solution":"print(\"Bonjour le monde\")"}],[{"text":"Regarder attentivement ia vidéo :

"}],[{"quiz":"696"}],[{"text":"

Python est un langage de programmation, où l'indentation horizontale du texte est importante. Vous apprendrez tous à ce sujet dans les activités suivantes. Mais pour l'instant  il faut garder à l'esprit que placer des espaces ou des tabulations avant toute ligne de code Python peut provoquer une erreur inattendue. 

Tester le code ci-dessous.

Vous pouvez vérifier comment python va se plaindre!

Corriger le bug dans le programme.

","title":"Indentation"},{"code":"print(\"Hello world\")\n print(\"Bonjour le monse\")"},{"text":"Exécuter le programme et corriger le bug."}],[{"title":"Activité 2 : Les variables en Python","posi":0},{"text":"

\"Déclaration\"Représentation

Une variable est un espace mémoire dans lequel il est possible de stocker une valeur, une donnée ou un objet (image, son, tableau de valeurs , ...).

 

"},{"code":"x=2
y=3
print(x*y)
z=\"bonjour\"
print(z)
"}],[{"title":"Noms des variables"},{"text":"
Le nom d'une variable s'écrit avec des lettres (non accentuées), des chiffres ou bien l'underscore _
Le nom d'une variable ne doit pas commencer par un chiffre.

En langage Python, l'usage est de ne pas utiliser de lettres majuscules pour nommer les variables (celles-ci sont réservées pour nommer les classes).

Exemple : age, mon_age, temperature1

A éviter : Age, AGE, MonAge, monAge, Temperature1
"},{"code":"age = 17
print(age)
texte = \"bonjour\"
print(texte)
1mavar = 12
print(1mavar)
ma var2 = 13
print(ma var2)
"},{"text":"Corriger les erreurs de syntaxe."}],[{"text":"

Pour affecter (on dit aussi assigner) la valeur 17 à la variable nommée age :

age = 17

La fonction print() affiche la valeur de la variable :

print(age)

Tester le code ci-dessus dans le compilateur Python.
","title":"Le type int (integer : nombres entiers)"},{"code":""},{"solution":"age = 17
print(age)
"}],[{"text":"

La fonction type() retourne le type de la variable :

print(type(age))\n


"},{"code":"
age=17
print(type(age))"},{"text":"
int est le type des nombres entiers (integer).
"}],[{"title":" ","text":"
# ceci est un commentaire\nage = age + 1\t# en plus court : age += 1\nprint(age)\n\nage = age - 3\t# en plus court : age -= 3\nprint(age)\n\nage = age*2\t\t# en plus court : age *= 2\nprint(age) 

Tester les instruction ci-dessus dans le compilateur Python.
"},{"code":""}],[{"text":"
age = age*2\t\t# en plus court : age *= 2\nprint(age)\n
a = 6*3 - 20\nprint(a)

Tester les instruction ci-dessus dans le compilateur Python.
"},{"code":""}],[{"text":"

L'opérateur // donne la division entière :

tour = 450//360\nprint(tour)\n

Tester le code ci-dessous.

","title":"L'opérateur //"},{"code":"tour = 450//360
print(tour)
"},{"text":"

L'opérateur // donne la division entière.

"}],[{"text":"

L'opérateur % (opération modulo) :

angle = 450%360\nprint(angle)\n


Tester le code ci-dessous


","title":"L'opérateur %"},{"code":""},{"text":"

L'opérateur % donne le reste de la division (opération modulo).

"}],[{"text":"

L'opérateur ** 

mo = 2**20\nprint(mo)\n\nracine2 = 2**0.5\nprint(racine2)\n


Tester le code ci-dessous


","title":"L'opérateur **"},{"code":"
"},{"text":"

L'opérateur ** donne la puissance.

"}],[{"text":"
b = 17.0 \t# le séparateur décimal est un point (et non une virgule)\nprint(b)\n\nprint(type(b))

Pour les floats (les réels le séparateur est le point.

Tester les codes ci-dessous. 
","title":"Le type float : nombres à virgule flottante"},{"code":""}],[{"text":"
c = 14.0/3.0\nprint(c)\n
c = 14.0//3.0\t# division entière\nprint(c)\n

Tester les instructions et conclure
","title":"/ et //"},{"code":""}],[{"text":"

 :

c = 14/3\nprint(c)\n

Attention : avec des nombres entiers, l'opérateur / fait une division classique et retourne un typefloat


Tester les instructions

","title":"Les nombres entier (int) et l'opérateur /"},{"code":""}],[{"text":"


a = -1.78489e3\nprint(a)\n


Tester les instructions.

","title":"Notation scientifique (puissances de 10)"},{"code":""}],[{"text":"


Pour utiliser les fonctions mathématiques, il faut commencer par importer le module math :

import math


Les fonctions mathématiques disponible sont les suivantes :

'acos', 'acosh', 'asin', 'asinh', 'atan',\n'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf',\n'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum',\n'gamma', 'hypot', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p',\n'modf', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc']

Pour appeler une fonction d'un module, la syntaxe est la suivante :
module.fonction(arguments)

Tester le code ci-dessous.

En déduire, à quelle fonction mathématique correspond math.sqrt

","title":"Les fonctions mathématiques"},{"code":"import math
print(math.sqrt(2))
"}],[{"text":"
print(math.pi)\t\t# donnée pi du module math (nombre pi)\n\nprint(math.sin(math.pi/4.0)) # fonction sin() du module math (sinus) 

Tester les instruction ci-dessus : "},{"code":""}],[{"text":"


nom = 'Dupont' \t# entre apostrophes\nprint(nom)\n\nprint(type(nom))\n\nprenom = \"Pierre\" \t# on peut aussi utiliser les guillemets\nprint(prenom)\n\nprint(nom, prenom) \t# ne pas oublier la virgule\n


Les chaînes de caractères se mettent entre 2 apostrophes ( ' : simple quote ) ou 2 guillemets ( \" : double quotes).

Tester les instructions ci-dessous.


","title":"Le type str (string : chaîne de caractères)"},{"code":""}],[{"text":"


chaine = nom + prenom\t# concaténation de deux chaînes de caractères\nprint(chaine)\n\nchaine = prenom + nom\t# concaténation de deux chaînes de caractères\nprint(chaine)\n\nchaine = prenom + ' ' + nom\nprint(chaine)\n\nchaine = chaine + ' 18 ans'\t# en plus court : chaine += ' 18 ans'\nprint(chaine)\n


La concaténation désigne la mise bout à bout de plusieurs chaînes de caractères.

La concaténation utilise l'opérateur +

Tester.
","title":"La concaténation "},{"code":"nom = \"Dupont\"
prenom = \"Pierre\"
"}],[{"text":"

 :

chaine = \"bonjour\"\nprint(len(chaine))\n


La fonction len() retourne la longueur (length) de la chaîne de caractères.

Tester.
","title":"La fonction len()"},{"code":"
chaine = \"bonjour\"
print(len(chaine))"}],[{"text":"


chaine = \"bonjour\"\nprint(chaine[0]) \t# premier caractère (indice 0)\n\nprint(chaine[1])\t# deuxième caractère (indice 1)\n\nprint(chaine[1:4])\t# slicing\n\nprint(chaine[2:])\t# slicing\n\nprint(chaine[-1])\t# dernier caractère (indice -1)\n\nprint(chaine[-6:])\t# slicing\n


Tester l'indexation et le découpage (slicing) des chaines de caractères.","title":"Indexage et slicing"},{"code":"chaine = \"Pierre Dupont 18 ans\"
print(chaine[1]) 
"}],[{"text":"

 

chaine = 'Aujourd'hui'\n\nchaine  = 'Aujourd\\'hui'\t\t# séquence d'échappement \\'\nprint(chaine)\n\nchaine  = \"Aujourd'hui\"\nprint(chaine)\n


Executer et corriger la syntaxe.","title":"Attention avec ' et \""},{"code":"chaine = 'Aujourd'hui'
print(chaine)
"}],[{"text":"


# saisir une chaîne de caractères et valider avec la touche Enter\nchaine = input(\"Entrer un nombre : \")\n\nprint(chaine)\n\nprint(type(chaine))\n\nnombre = float(chaine)\t# conversion de type\nprint(nombre**2)\n


La fonction input() lance une invite de commande (en anglais : prompt) pour saisir une chaîne de caractères.

Tester
","title":"La fonction input()"},{"code":"
chaine = input(\"Entrer un nombre : \")
print(chaine)

"}],[{"text":"Réaliser un programme qui convertit des degrés en radians.
Le cahier des des charges est le suivants :
- Demander à l'utilisateur l'angle en degré;
- Afficher la conversion en radian.

Compléter le programme ci-dessous : 

","title":"Exercice 1 : Convertisseur degrés en radians"},{"code":"#Demande l'angle en degré
degStr = input(\"angle en degré\")
#convertir en float

#convertir en radian

#Afficher la conversion




"},{"solution":"#Demande l'angle en degré
degStr = input(\"angle en degré\")
#convertir en float
deg = float(degStr)
#convertir en radian
rad = deg * math.pi / 180
#Afficher la conversion
resultat = \"Angle en radian : \" + rad
print(resultat

"}],[{"text":"Réaliser un programme qui calcule la surface d'un disque.
Le cahier des des charges est le suivants :
- Demander à l'utilisateur le rayon;
- Afficher la surface du disque.

","title":"Exercice 2 : Calculer la surface d'un disque"},{"code":""}],[{"text":"Réaliser un programme qui dit bonjour la personne connectée.
Le cahier des des charges est le suivants :
- Demander le prénom de la personne.
- Affiche \"bonjour le prenom\".
","title":"Exercice 3 : Bonjour"},{"code":""}],[{"text":"
A partir des deux variables prenom et nom, afficher les initiales (par exemple LM pour Léa Martin).
","title":"Exercice 4 : Les initiales"},{"code":""},{"solution":"prenom = \"Léa\"
nom = \"Martin\"
initiale = prenom[0] + nom[0]
print(initiale)
"}]]

En poursuivant votre navigation sur mon site, vous acceptez l’utilisation des Cookies et autres traceurs  pour réaliser des statistiques de visites et enregistrer sur votre machine vos activités pédagogiques. En savoir plus.