0% ont trouvé ce document utile (0 vote)
6 vues18 pages

Introduction et histoire de Python

Ce chapitre présente Python, le décrivant comme un langage de programmation interprété, de haut niveau et à usage général. Python met l'accent sur la lisibilité du code grâce à l'utilisation d'espaces significatifs dans sa syntaxe. Sa philosophie de conception vise à aider les programmeurs à écrire un code clair et logique tant pour des projets de petite que de grande envergure. Le chapitre fournit un bref historique de Python et décrit certaines de ses caractéristiques clés, y compris le typage dynamique, un ramasse-miettes automatique et le support de plusieurs paradigmes de programmation.

Traduit par

ScribdTranslations
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
6 vues18 pages

Introduction et histoire de Python

Ce chapitre présente Python, le décrivant comme un langage de programmation interprété, de haut niveau et à usage général. Python met l'accent sur la lisibilité du code grâce à l'utilisation d'espaces significatifs dans sa syntaxe. Sa philosophie de conception vise à aider les programmeurs à écrire un code clair et logique tant pour des projets de petite que de grande envergure. Le chapitre fournit un bref historique de Python et décrit certaines de ses caractéristiques clés, y compris le typage dynamique, un ramasse-miettes automatique et le support de plusieurs paradigmes de programmation.

Traduit par

ScribdTranslations
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

CHAPITRE 1

INTRODUCTION

Python est uninterprétéde haut niveau,à usage générallangage de programmation.


La philosophie de conception de Python met l'accent surlisibilité du code avec son utilisation notable
deespace blanc [Link] constructions linguistiques etorienté objetapproche vise à
aider les programmeurs à écrire un code clair et logique pour des projets de petite et grande envergurects.[27]

Python est souvent décrit comme un langage « avec des batteries incluses » en raison de sa

bibliothèque standard complète.

1.1 HISTOIRE DE PYTHON

Python a été conçu à la fin des années 1980s [33] parGuido van
RossumàCentrum Wiskunde & Informatica(CWI) dans lePays-Basen tant que successeur de
lelangue ABC (s'inspirant deSETL)capable degestion des exceptions et
interfaçage avec leAmoebasystème d'exploitation.[8]Son implantation a commencé en décembre
1989. Van Rossum a continué en tant que développeur principal de Python jusqu'au 12 juillet 2018, lorsqu'il a

a annoncé sa "vacance permanente" de ses responsabilités en tant que PythonBienveillant


Dictateur à vie, un titre que la communauté Python lui a décerné pour refléter son engagement à long terme
engagement en tant que principal décideur du projet. En janvier 2019, le cœur actif de Python
les développeurs ont élu Brett Cannon, Nick Coghlan, Barry Warsaw, Carol Willing et Van
Rossum à un "Conseil de Direction" de cinq membres pour diriger le projet.[37]Python 2.0 était

publié le 16 octobre 2000 avec de nombreuses nouvelles fonctionnalités majeures, y compris uncycle

détectionramasse-poussières et soutien pourUnicode.[38]Python 3.0 a été publié le 3


Décembre 2008. C'était une révision majeure de la langue qui n'est pas complètementen arrière-
compatible.[39]De nombreuses fonctionnalités majeures étaientretournévers Python 2.6.x[40]et 2.7.x
version des séries. Les versions de Python 3 incluent l'utilitaire 2to3, qui automatise (du moins
(partiellement) la traduction du code Python 2 en Python 3.

1
1.2 CARACTÉRISTIQUES DE PYTHON

Python est a multiprogramme paradigme langue. Orienté objet


programmationetprogrammation structuréesont entièrement pris en charge, et de nombreuses fonctionnalités
soutienprogrammation fonctionnelle etprogrammation orientée aspect (y compris
parmétaprogrammation[45]etmétaobjets(méthodes magiques).[46]De nombreux autres paradigmes

sont pris en charge par des extensions, y comprisconception par contrat[47][48] etlogique

programmation.[49]

Python utilisetypage dynamiqueet une combinaison decomptage de référenceset un cycle-

détecter le ramasse-miettes pour gestion de la mé[Link] présente également un dynamiquenom

résolution(liaison tardive)qui lie les noms de méthode et de variable pendant le programme


exécution.

Le design de Python offre un certain soutien pourprogrammation fonctionnelle dans


leLisptradition. Il a des fonctions de filtre, de mappage et de réduction;

compréhensions de listedictionnairesensembles etgénérateurexpressions.[50]

La bibliothèque standard a deux modules (itertools et functools) qui implémentent


outils fonctionnels empruntés deHaskelletML standard[51]

La vision de Van Rossum d'un langage de base petit avec une grande bibliothèque standard et

interpréteur facilement extensible issu de ses frustrations avecABCqui a épousé le


approche opposée.[33]

Python vise une syntaxe et une grammaire plus simples et moins encombrées tout en donnant

offre aux développeurs un choix dans leur méthodologie de codage. Contrairement àPerl'sil y a plus que
une façon de le fairemotto, Python adopte un "il devrait y en avoir un - et de préférence seulement un"

une—évidente manière de le faire" philosophie de conception.[52]Alex Martelli, un membre de la Python


La Fondation du logiciel et l'auteur du livre Python écrivent que "Pour décrire quelque chose comme

'intelligent' n'est pas considéré comme un compliment dans la culture Python.

2
1.2.1 CARACTÉRISTIQUES PRINCIPALES

La grande taille de Pythonbibliothèque standardsouvent cité comme l'un de ses plus grands

forces,[97]fournit des outils adaptés à de nombreuses tâches. Pour les applications accessibles sur Internet, de nombreuses
formats et protocoles standards tels queMIMEetHTTPsont pris en charge. Cela inclut
modules pour créationgraphique utilisateur
interfaces, connexion àrelationnel
bases de donnéesgénération de nombres pseudorandomarithmétique à précision arbitraire
décimals,[98]manipulationexpressions régulièresettests unitaires.

Certaines parties de la bibliothèque standard sont couvertes par des spécifications (par exemple,

leInterface de passerelle de serveur Web(WSGI) l'implémentation wsgiref suit PEP 333[99]),


mais la plupart des modules ne le sont pas. Ils sont spécifiés par leur code, leur documentation interne, et

ensembles de tests (si fournis). Cependant, parce que la majeure partie de la bibliothèque standard est multiplateforme

Code Python, seule quelques modules nécessitent des modifications ou des réécritures pour des implémentations variantes.

À partir de mars 2018, leIndex de paquets Python (PyPI), le dépôt officiel pour

logiciel Python tiers, contient plus de 130 0000[100]des colis avec une large gamme de
fonctionnalité, y compris :

Interfaces utilisateur graphiques

Cadres web
Multimédia
Bases de données
Réseautage
Cadres de test
Automatisation
Web scrapingen cours[101]
Documentation
Administration système
Calcul scientifique
Traitement de texte

Traitement d'images

3
Le web scraping est une technique de logiciel informatique d'extraction d'informations à partir de

sites web. Cette technique se concentre principalement sur la transformation de données non structurées

données (format HTML) sur le web en données structurées (base de données ou feuille de calcul).

Vous pouvez effectuer du web scraping de différentes manières, y compris en utilisant Google Docs pour

presque tous les langages de programmation. Je me tournerais vers Python en raison de sa facilité

et un écosystème riche. Il dispose d'une bibliothèque appelée 'BeautifulSoup' qui aide cela.
Dans cet article, je vais vous montrer le moyen le plus facile d'apprendre le web scraping en utilisant Python.

programmation.
Pour ceux d'entre vous qui ont besoin d'un moyen non-programmique d'extraire des informations à partir de

pages web, vous pouvez également [Link]. Il fournit une interface graphique conviviale pour

effectuer toutes les opérations de base de scraping web. Les hackers peuvent continuer à lire ceci

article.

1.2.2 AVANTAGES
Facile à coder
Contient des bibliothèques riches et est facile et direct à mettre en œuvre
3) Facilement compatible sur tout système d'exploitation

4) Réduit la taille du code

1.3 PLAN DU PROJET


L'objectif principal du projet est de chiffrer les données et de les envoyer au destinataire de manière sécurisée.

et du côté du récepteur, les données seront décodées pour permettre au récepteur de voir les données d'origine

1.4 REVUE DE LA LITTÉRATURE


Alors que le projet détermine le message ou les données que nous avons saisies, cela sera

le message chiffré et original sera affiché en décodant. Un chiffre est un type de secret
code, où vous échangez les lettres afin que personne ne puisse lire votre message. L'un des
le plus ancien et le plus célèbre des chiffrements, le chiffrement de César, qui porte le nom de Jules César.

Cacher un mot s'appelle le chiffrement. Commençons par chiffrer la lettre 'a'. Pour ce faire,
nous pouvons dessiner l'alphabet dans un cercle, comme ceci :

4
Pour transformer une lettre normale en une lettre secrète chiffrée, nous devons avoir une clé secrète.
Utilisons le chiffre 3 comme clé (mais vous pouvez utiliser le chiffre de votre choix).

Pour chiffrer la lettre 'a', il suffit de déplacer 3 lettres dans le sens des aiguilles d'une montre, ce qui donnera la lettre d.

‘d’

Nous pouvons utiliser ce que nous avons appris pour chiffrer un mot entier. Par exemple, 'bonjour'
crypté est 'khoor'.
h+3=k
e+3=h
l + 3 =o
l+3=o
o + 3 =r
Ramener le texte à la normale s'appelle le déchiffrement. Pour déchiffrer un mot, il suffit de soustraire le
clé au lieu de l'ajouter :
k-3=h

5
h-3=e
o - 3 =l
o - 3 =l
r-3=o

6
CHAPITRE 2
OBJECTIF ET CHAMP D'APPLICATION

2.1 OBJECTIF

L'objectif du projet est de convertir le message donné en un code secret et de le décoder.


c'est quand l'entrée donnée est correcte.

Cacher un mot s'appelle le chiffrement. Le chiffrement et le déchiffrement sont les deux éléments essentiels.

Les fonctionnalités de la cryptographie. Un message envoyé sur le réseau est transformé en un


message chiffré méconnaissable connu sous le nom de chiffrement des données. À l'autre extrémité, le

Le message reçu est converti dans sa forme originale connue sous le nom de décryptage.

2.2 CHAMP
Les entreprises comme WhatsApp, Facebook, Instagram, etc., seront suivies.
ce type de cryptage dans leur application, comme ils fourniront un cryptage de bout en bout
lorsque l'expéditeur envoie le message, le message sera chiffré et différent
code ou message inconnu pour protéger le message contre les vols de données. Par cela, les données
ou le message peut être transféré de manière sécurisée au destinataire.

7
CHAPITRE 3
SPÉCIFICATION DE RECRUTEMENT

3.1 INTRODUCTION
Pour être utilisé efficacement, tous les logiciels informatiques ont besoin de matériel certain

composants ou autres ressources logicielles à être présentes sur un ordinateur. Ces


Les prérequis sont connus sous le nom d'exigences du système informatique et sont souvent utilisés comme un

ligne directrice par opposition à une règle absolue. La plupart des logiciels définissent deux ensembles de systèmes

Minimum et Recommandé. Avec une demande croissante pour des niveaux supérieurs
puissance de traitement et ressources dans les versions plus récentes des logiciels, exigences système

tendent à augmenter avec le temps. Les analystes de l'industrie suggèrent que cette tendance joue un rôle plus important

partie des améliorations de conduite des systèmes informatiques existants que technologique

avancées.

3.2 EXIGENCES LOGICIELLES


Les exigences du logiciel sont :

Les exigences logicielles concernent la définition des besoins en ressources logicielles et

prérequis à installer sur un ordinateur pour assurer un fonctionnement optimal de


une application. Ces exigences ou pré-requis ne sont généralement pas inclus dans le
paquet d'installation de logiciel et doit être installé séparément avant que le logiciel ne soit
installé.

EXIGENCES LOGICIELLES POUR LA PRESENTATION

PROJET : SYSTÈME D'EXPLOITATION : - Windows 7/

XP/8/10

PYTHON

8
3.3 EXIGENCES MATÉRIELLES
L'ensemble le plus courant d'exigences défini par tout système d'exploitation ou
l'application logicielle est les ressources informatiques physiques, également connues sous le nom de matériel. Un

la liste des exigences matérielles est souvent accompagnée d'une liste de compatibilité matérielle

(HCL), en particulier dans le cas des systèmes d'exploitation. Une liste HCL testée, compatibilité
et parfois des périphériques matériels incompatibles pour un système d'exploitation particulier ou

application. Les sous-sections suivantes discutent des divers aspects du matériel


exigences.

EXIGENCES MATÉRIELLES POUR LE PROJET ACTUEL :

PROCESSEUR : - Intel dual Core

i3/i5/i7 RAM : - 1 Go DISQUE DUR

- 80 Go

9
CHAPITRE 4
RÉSULTATS ET DISCUSSION

4.1 RÉSULTATS
4.1.1 CAPTURES D'ÉCRAN

Fig 4.1 Sortie exécutée

La figure ci-dessus montre la sortie générée lorsque le code est exécuté et elle le fera
Demandez un message à entrer. En entrant le message, vous passerez à l'étape suivante.

10
La figure 4.2 a été convertie

Ceci est la sortie générée lorsque le message est saisi. Après avoir saisi le message, il
je demanderai une valeur clé et par cette valeur clé le message sera changé en présent
La valeur d'index de l'alphabet plus la valeur clé donnée forme un nouveau message.

11
Fig4.3 le message décodé

Cela sera généré après le Fig4.2, ici le message a été converti et en entrant
1 il sera décodé au message original.

12
Fig 4.4

Ici, le message original n'a pas été généré parce que le numéro que nous avons entré est
ne correspondant pas au bon nombre qui a été affiché.

13
CHAPITRE 5
CONCLUSION ET TRAVAIL FUTUR

5.1 CONCLUSION
Ainsi, le projet ci-dessus peut être mis en œuvre dans toutes les entreprises, où

le transfert de données a lieu ou le passage de messages doit être effectué de manière chiffrée depuis

De l'expéditeur au destinataire. Ce projet est utile partout avec quelques modifications. Projet
est flexible c'est-à-dire que tout changement/modification en python et mise en œuvre peut être

réalisé facilement.

5.2 TRAVAUX FUTURS

Le projet peut être étendu en fonction des exigences des entreprises dans différents
domaines. Ce projet peut être étendu avec d'autres technologies chiffrées.

14
RÉFÉRENCES

[1]. Mark Summerfield, Programmer en Python 3 : Une introduction complète à la


Langage Python.

[2]. 10 raisons pour lesquelles Python déchire pour la recherche (et quelques raisons pour lesquelles ce n'est pas le cas) — Hoyt

Koepke. [Link]. Consulté le 3 février 2019.

[3].[Link]/blog/2015/10/guide-debutant-sur-le-web-scraping-beautiful-
soupe-python/ ,dernier accès le 24-juin-19.

La référence du langage Python, section 3.3. Classes de style nouveau et classiques, pour
version 2.7. Récupéré le 12 janvier 2011.

[5]Indication de type pour [Link]. 24 décembre 2014. Consulté le 5 mai 2015.

[6]mypy - Typage statique optionnel pour Python". Récupéré le 28 janvier 2017.

[7]Zadka, Moshe; van Rossum, Guido (11 mars 2001).

[8] PEP 237– Unification des entiers longs et des entiers. Propositions d'amélioration de Python.
Python Software Foundation. Consulté le 24 septembre 2011.

15
ANNEXE

A. CODE SOURCE

#!/bin/python3

abcdefghijklmnopqrstuvwxyz

newMessage

Veuillez entrer un message à convertir en message secret :

clé = input('Entrez une clé (1-26) : ')

clé = int(clé)

si la clé % 26 == 0 :

clé = clé +2

pour caractère dans le message :

si caractère dans l'alphabet :

position = [Link](caractère)

newPosition = (position + clé) % 26

nouveauCaractère

newMessage += newCharacter

sinon :

nouveauMessage += caractère

16
print('Votre nouveau message est : ', newMessage)

Décodez

decodedMsg

pour caractère dans newMessage :

si le caractère est dans l'alphabet :

position = [Link](caractère)

nouvellePosition = (position - clé) % 26

nouveauCaractère

decodedMsg += newCharacter

sinon :

decodedMsg += caractère

print("Appuyez sur 1 pour obtenir le message original")

nouvelleRes = entrée()

newRes = int(newRes)

si(newRes == 1):

imprimer(decodedMsg)

17
18

Vous aimerez peut-être aussi