Computing">
Introduction à la programmation Python
Introduction à la programmation Python
Contenu
1 Introduction. 3
1.1 Bonjour le monde !. 3
1.2 Qui suis-je. 3
1.3 Qui nous sommes. 3
1.4 Qu'est-ce qui rend PythonGénial ?4
3
1 Introduction
4
1.4 Qu'est-ce qui rend Python génial ?
C'est GRATUIT !!
Personnellement, je n'ai pas entendu de meilleure raison d'utiliser quelque chose. Python est un langage totalement gratuit.
téléchargez, utilisez et jouez avec, c'est parce qu'un groupe de bénévoles fous consacre son temps à l'amélioration
la langue (tout comme Wikipédia).
Licence gratuite
Grandes Communautés
Dépôt gratuit(PyPi)
Le code Python est souvent 3 à 5 fois plus court que Java, et 5 à 10 fois plus court que C++.
items= [ 1, 2, 3, 4, 5]
pour x
dans les éléments
:
imprimerx
items= [ 1, 2, 3, 4, 5]
. chaque fait i|
articles
mets i
fin
x = 1
x < 5 :
tandis que
print"Le nombre est:" , x
x += 1
PARTIE 1 : Introduction à la programmation Python
<?php
$x=1;
tant que($x<5)
{
echo"Le nombre est :$x<br>";
x++;
}
?>
Tout le monde devrait apprendre la programmation - car la programmation vous apprend à penser et ensuite, ça rend.
tu es capable de montrer aux autres comment tu penses !
Nous avons donc besoin d'un langage qui soit facile à apprendre pour tout le monde. C'est là que Python entre en jeu.
Semblable à la langue anglaise ! Cela rend facile de se souvenir des commandes et rend aussi facile
pour comprendre ce que vous faites.
C'est votre tremplin vers le monde de la programmation !
Disney
Nokia
IBM
Jeux (Civilization, Battelfield)
Génomique
Les enfants à partir de 9 ans peuvent l'utiliser ! Des centaines d'écoles à travers le monde utilisent Python pour enseigner.
Coder pour les enfants.
PARTIE 1 : Introduction à la programmation Python
Bonjour Raspberry Pi !
Raspberry Piest un microordinateur de la taille d'une carte, peu coûteux, qui est utilisé pour une gamme surprenante d'applications passionnantes
des choses à faire soi-même, telles que : des robots, des voitures télécommandées et des consoles de jeux vidéo. Avec Python comme son
langage de programmation principal, le Raspberry Pi est utilisé par des enfants pour construire des radios, des caméras, des machines de jeu d'arcade,
et des distributeurs de nourriture pour animaux!
Des entreprises telles que Google, Yahoo !, Disney, Nokia et IBM utilisent toutes Python. En fait, parmi les langages de programmation
languesPython a connu la plus forte croissance de la demande d'emploi d'une année sur l'autre— à 19%— en mars 2013.
Notamment, la demande globale d'embauche pour les professionnels de l'informatique a diminué d'année en année de 5 % en janvier.
Django—le populaire framework d'application web open source écrit en Python—est la base de
des sites comme Pinterest, The New York Times, The Guardian, Bit Bucket, et Instagram. Django est un
un framework complet qui élimine la complexité du développement web, tout en vous donnant encore le contrôle sur
autant que vous le souhaitez. En tant que cadre open-source, toutes les informations nécessaires pour commencer sont disponibles.
2.1 Littéraux
Obtenons une définition deWikipédia)
En informatique, un littéral est une notation pour représenter une valeur fixe dans le code source. Presque tous
les langages de programmation ont des notations pour les valeurs atomiques telles que les entiers, les nombres à virgule flottante, et
chaînes, et généralement pour les booléens et les caractères ; Contrairement aux littéraux, les variables ou constantes sont
symboles qui peuvent prendre l'une des valeurs fixes d'une classe, la constante étant contrainte de ne pas changer.
Dans le code suivant, vous pouvez voir des exemples de différents types de littéraux en Python...
#Littéral Entier
print42343
#Entier long
print2342342L
Point flottant
imprimer343.3234
#Chaîne littérale
Imprimez "Salut, c'est bien"
Merci
#Littéral Binaire
imprimer0b101 * 0b10
#Littéral Hexadécimal
imprimer0x100 0x2/
#Littéral Octal
imprimer0400 02/
Pour imprimer le résultat d'une expression en python, nous utilisons unimprimer()fonction. Dans l'exemple ci-dessus, nous imprimons
de nombreuses valeurs numériques différentes. En même temps, vous pouvez voir quelques opérations mathématiques simples.
PARTIE 1 : Introduction à la programmation Python
Qu'est-ce que # ?
Tout ce que vous écrivez après # s'appelle un commentaire et cela signifie qu'il ne sera jamais exécuté. Nous utilisons
des commentaires pour ajouter des explications à notre code, puis nous pouvons être sûrs de nous souvenir de ce que nous avons fait - ou
Délimiteur de chaîne
Concernant les chaînes, nous en discuterons davantage, mais pour l'instant, vous pouvez utiliser des guillemets simples ou doubles pour les chaînes.
Salut
2.2 Nombres
En Python, vous avez tout ce qu'un calculateur fait - et plus encore ! Essayons le code suivant !
2.3 Opérateurs
Les opérateurs manipulent vos données et génèrent de nouvelles données ! Quel que soit le langage de programmation, indépendamment de son
La syntaxe suit des opérateurs courants tels que les opérateurs arithmétiques, logiques ou booléens. Familiarisons-nous avec
ces opérateurs.
PARTIE 1 : Introduction à la programmation Python
En Python, vous pouvez déclarer et initialiser une variable sans spécifier de type de données. N'oubliez pas que Python
est un langage dynamique. Nous parlerons davantage des variables plus tard.
x = 4
imprimer 'x = 4' ,x
x += 4
imprime 'x += 4 =>', x
x -= 4
imprimer 'x -= 4 =>'
,x
x *= 4
print'x *= 4 =>' ,x
x /= 4
print'x /= 4 =>' ,x
x %= 3
print'x %= 3 =>' ,x
x = 2
x **= 4
print'x **= 4 =>',x
Une expression booléenne peut être composée d'une combinaison des constantes booléennesVraiouFaux ,
Variables de type booléen, opérateurs de valeur booléenne et fonctions de valeur booléenne.
imprimer3 > 2
imprimer3 < 1
imprimer Vrai
imprimer Faux
imprimer5 == 5
imprimer5 != 5
imprimer5 <> 5
imprimer5 > 5
imprimer5 < 5
imprimer5 >= 5
imprimer5 <= 5
#Binaire Et
imprimer '5 & 4 =' , 5 &4
#Binaire Ou
imprimer '4 | 1 =' , 4 | 1
#XOR binaire
print '5 ^ 3 =' ,5 ^ 3
Complément Binaire
imprimer'~5 =',~ 5
Décalage binaire à gauche
print'4 << 1 =' , 4 << 1
#Décalage à droite binaire
PARTIE 1 : Introduction à la Programmation en Python
Nous avons deux opérateurs utiles en Python qui évitent beaucoup de douleurs ! Tout d'abord, il y a ledansvérificateur d'adhésion.
Il obtient un élément et une collection, puis vérifie si cet élément existe ou non dans la collection.
imprimer5 dans[ 4, 5, 3, 4, 1
Lire : Le nombre 5 est-il 'DANS' le tableau suivant, [4, 5, 3, 4, 1]
impression 5 pas dans [ 4, 5, 3, 4, 1]
Un autre opérateur utile estest. C'est plus bas niveau ! Il accepte deux objets (ou variables) puis évalue
vrai si les variables de chaque côté de l'opérateur pointent vers le même objet et faux sinon.
x = 5
z = x
y = 4
imprimer 'x est y'
, x est y
imprimer 'x est z'
, x est z
print 'x n'est pas y'
, x n'est pas y
1. **
2. + - (Plusun et moins)
3. / % //
4. ~ + - (Addition, Soustraction
5. >> <<
6. &
7. ^|
8. <= < > >=
9. <> == !=
10. = %= /= //= -= += **=
11. est
12. pas
Objets
Jusqu'à présent, vous avez entendu le terme variables de nombreuses fois ! Cependant, il serait plus correct de
référez-vous à tout en Python comme un objet ! Si vous êtes familiarisé avec la programmation orientée objet, cela
Cela ne devrait pas poser de problème pour vous. Sinon, consultez les exemples suivants :
PARTIE 1 : Introduction à la programmation Python
VERSION EN MAJUSCULE DU CONTENU DANSmessageNe serait-il pas formidable que variable puisse faire cela pour nous ? Eh bien, cela
peut
2.4 Chaînes
Vous avez vu des nombres et des exemples simples du type de données chaîne jusqu'à présent ! Nous avons utilisé des chaînes pour montrer notre
séquences. Les chaînes en Python sont des séquences de caractères. Vous créez un littéral de chaîne en l'enfermant
personnages en solo ' , guillemets"doubles ou triples'''ou""".
texte= L'informatique n'est pas plus une question d'ordinateurs que l'astronomie ne l'est.
à propos des télescopes.
Dijkstra: ,
texte= L'informatique n'est pas plus liée aux ordinateurs que l'astronomie ne l'est
à propos des télescopes.
imprimer "Dijkstra:", texte
# Les guillemets triples ont l'avantage supplémentaire de permettre à notre code de s'étendre
plusieurs lignes.
texte= Offrir une meilleure éducation en informatique dans les écoles publiques
aux enfants, et encourager les filles à participer, est le seul moyen de
réécrire les stéréotypes sur la technologie et vraiment briser l'ancienne culture masculine
club.
print"Dijkstra:",text
2.4.1 Indexation
Vous pouvez accéder à des parties d'une chaîne en utilisant l'opérateur d'indexationvotreChaine[i]. L'indexation commence à zéro,
lettres = abcdefghijklmnopqrstuvwxyz
14PARTIE 1 : Introduction à la programmation en Python
Alors essaie !
lettres = abcdefghijklmnopqrstuvwxyz
imprimerlettres[- 1]
printletters[- 2]
imprimerlettres[- 4]
imprimerlettres[- 7]
2.4.3 Découpage
Les biologistes trouvent la fonctionnalité de découpage en Python très utile. Le découpage vous offre une approche simple.
retourner n'importe quelle portion d'une séquence.
Essayons...
lettres = abcdefghijklmnopqrstuvwxyz
imprimer des lettres
imprimerlettres[:15 ]
Imprimer la séquence à partir du 5ème jusqu'à la fin
imprimerlettres:] [5
PARTIE 1 : Introduction à la programmation Python
Tout est comme un index positif sauf que la direction est de droite à gauche ! Souvenez-vous dedébutla valeur doit
être moins quearrête
.
lettres = abcdefghijklmnopqrstuvwxyz
imprimer des lettres
Étape
Essayez 'étape' pour retourner les données dont vous avez besoin.
lettres = abcdefghijklmnopqrstuvwxyz
imprimer des lettres
#rb n g t e d i n n t e e d i n f a n o t h n t e t e n a t u a n e u l e s t e a t u
printlettres[:: 3]
imprimerleslettres[:: 1]
imprimer des lettres [5:15:3]
lettres = abcdefghijklmnopqrstuvwxyz
#Essayez cette lettres[::-1]
.<nom de la fonction>
Familiarisons-nous avec quelques fonctions de chaîne :
Exemple 1 :
texte= La programmation orientée objet est une idée exceptionnellement mauvaise qui
n'aurait pu provenir que de Californie.
imprimer le texte . majuscule()
imprimer le texte . minuscule()
Exemple 2 :
Exemple 3 :
texte= La programmation orientée objet est une idée exceptionnellement mauvaise qui
ne pouvait provenir que de la Californie.
imprimer la longueur
( du texte)
imprimer le texte . commence parCeci
imprimerletexte . finit_par
( "This"
Exemple 4 :
Exemple 5 :
Exemple 6 :
texte= La programmation orientée objet est une idée exceptionnellement mauvaise qui
n'aurait pu provenir que de Californie.
#vérifier si un mot spécifique existe dans le texte ou non
imprimer"est"dansletexte
Exemple 7 :
#La fonction Find détermine si une autre chaîne se trouve dans une chaîne
#retourne l'index s'il est trouvé et -1 sinon
imprimer le texte . trouver
( est )
imprimer le texte . trouver
( est , 5)
imprimer le texte . trouver
( isss )
PARTIE 1 : Introduction à la programmation Python
Exemple 8 :
Nous pouvons créer un modèle de chaîne et le formatter avec des données réelles provenant d'une base de données. Cela pourrait économiser
nous fait gagner beaucoup de temps et offre une meilleure structure pour notre code. Voyons quelles approches sont disponibles pour cela
sont.
À l'ancienne ! Style C
Bonne nouvelle pour les programmeurs C, il suffit de faire ce que vous avez fait avecprintf .
Zéro restant
imprimer 'Maintenant, il est %02d:%02d.' %(
6, 30)
Octal et hexadécimal
print'Décimal : %d, Octal : %o, Hexadécimal : %x' % (10 , 10, 10)
L'opérateur % est utilisé pour effectuer une interpolation de chaînes. L'interpolation est plus efficace en termes d'utilisation de la mémoire que
concaténation conventionnelle.
PARTIE 1 : Introduction à la programmation Python
chaîne
% D: entier
% O : octal
% X: hexadécimal
% F : réel
% E : exponentiel réel
%%: Signe de pourcentage
Les symboles peuvent être utilisés pour afficher des nombres dans divers formats.
Exemple :
pour la nourriture
acheteur
, , facteurs_timeindb :
imprimer . format( acheteur
, de nourriture
, temps
Si vous avez déjà utilisé C ou C++, vous devez savoir ce quetypeof()n'est pas ! Si ce n'est pas le cas, n'oubliez pas que tout dans un
le langage de programmation a un type!
D'abord, permettez-moi de demander à mon cher ami d'expliquer la signification du type. Cher [Link]édia,veuillez nous faire savoir
quoitypeest :
PARTIE 1 : Introduction à la programmation Python
En informatique et en programmation, un type de données, ou simplement type, est une classification pour
identifier un des différents types de données, tels que réel, entier ou booléen, qui détermine le possible
valeurs pour ce type ; les opérations qui peuvent être effectuées sur les valeurs de ce type ; la signification des données ;
et la façon dont les valeurs de ce type peuvent être stockées.
Cette description detypedépend fortement de la structure physique de la mémoire allouée pour ce type.
Par exemple, dans la plupart des langages de programmation, nous avons différents types de données pour les valeurs entières. Par exemple
en C, nous avonsoctetoù seulement 1 octet sera alloué à une variable de ce type, donc 1 octet est composé de 8 bits et nous
peut présenter 256 nombres différents ! Alors que pour un autre type de donnéescourt2 octets seront alloués, ce qui signifie
2 à la puissance 16 différents nombres.
Bonne nouvelle ! Python est un langage à typage dynamique, ce qui signifie qu'il détectera vos variables et expressions.
type de données à l'exécution. Mais souvent, vous devez vérifier le type vous-même avant de faire quelque chose de pertinent
opérations. Cela peut être fait avec letypeopérateur.
type d'impression ( 5)
type d'impression ( 5.0)
type d'impression ( 5) ==int
type d'impression ( 5) == flottant
type d'impression ( mais je veux être un entier ! )
printtype ( 5/ 2.0)
Python est un langage dynamique et les types sont déclarés à l'exécution. Quels sont les types disponibles dans
Python ?
Tout est fait au moment de l'exécution, mais il existe plusieurs types simples de données prédéfinies en Python, tels que :
Liste
Tuple
Dictionnaire
Définir
Tuple nommé
PARTIE 1 : Introduction à la programmation Python
Dictionnaire Ordonné
Ensemble gelé
Dans Python, les noms de variables sont des références qui peuvent être modifiées à l'exécution. Les types les plus courants et
Les routines sont mises en œuvre en tant que fonctions intégrées, ce qui signifie qu'elles sont toujours disponibles à l'exécution sans avoir besoin de
Par exemple :
x = 5
Après cette ligne, Python détecte le type de données approprié (qui est un entier) et réserve également un emplacement mémoire.
où il stocke l'entier. Il est également important de se rappeler qu'une variable peut être assignée à n'importe quel type de données
à l'exécution
x = 5
x = 3.4
x = Bonjour
Dans les langages dynamiques, nous devons être en mesure de vérifier et de confirmer le type de données d'une variable. Cela peut être fait par
utilisant letype()fonction
x = 5
type d'impression ( x)
x = 5.4
type d'impression ( x)
x = bonjour
type d'impression ( x)
type d'impression ( 3* 3.0)
type d'impression ( 3* 3)
Leidentitéd'un objet. C'est un entier (ou un long entier) qui est garanti unique et
constante pour cet objet pendant toute sa durée de vie. Deux objets avec des durées de vie non chevauchantes peuvent avoir le
mêmeid()valeur. (Remarque d'implémentation : il s'agit de l'adresse de l'objet.)
Essayons.
x = 5
y = salut
imprimante ( x)
imprimerid ( y)
Rappelez-vous que tout en Python est un objet ! Dans la programmation orientée objet, donc aussi en Python,
les objets peuvent être :
Par exemple, en Python, les listes sont mutables tandis que les chaînes ne le sont pas ! Créons un objet chaîne et essayons ensuite de
s = abcdefg
s[ 2] ='x'
Regardez le message d'erreur,'str' ne prend pas en charge l'attribution d'éléments à la ligne 2, c'est le résultat de
être immutable ! Mais bien sûr, vous pouvez changer la valeur de l'objet de chaîne entier avec une nouvelle, mais même dans
dans ce cas, l'ancien objet sera supprimé (après un certain temps) et un nouvel objet sera généré.
s = bonjour
imprimerid ( s)
s = au revoir
imprimerid ( s)
je= [ 1,2,3]
#vérifiez l'ID actuel
imprimerid ( i)
Essayez de changer sur place
je
[ 0] = 7
#Aucune erreur, et maintenant vérifiez si l'ID est le même ou non ?
imprimerid ( i)
PARTIE 1 : Introduction à la programmation Python
Liste
Tuple
Dictionnaire
Jeu
Et il y a aussi d'autres collections, mais ce sont des versions plus spécifiques des quatre précédentes :
Tuple nommé
Dictionnaire ordonné
Ensemble ordonné
Ensemble gelé
3.1 Liste
La première collection est une liste. Les listes sont des collections d'objets hétérogènes, qui peuvent être de tout type, y compris
autres listes.
Mutable
Les listes en Python sont mutables et peuvent être modifiées à tout moment.
Les chaînes sont simplement une sorte de liste de caractères - mais immuables. Donc, quand nous parlons de listes, nous avons des similitudes.
indexation, découpage et même des méthodes et fonctions similaires.
data= []
data= [ 1,2,3,4,5]
N'oubliez pas que vous pouvez avoir des éléments de différents types de données dans une liste. Considérez la liste suivante :
PARTIE 1 : Introduction à la programmation Python
Si vous êtes programmeur, vous devriez être familiarisé avec les boucles for, elles vous permettent de répéter un bloc de code.
et surtout, ils sont bons pour parcourir une liste. Si vous ne l'êtes pas, soyez juste patient, dans les prochains chapitres.
nous allons parler d'eux !
Le parcours est comme la lecture !
imprimerc
Regardez la simplicité dupourboucle. Avec seulement une variable de conteneur, commec, itérera à travers la collection
et ramasser des éléments un par un puis les imprimer à l'écran.
3.1.3 Plage()
1plage(stop)Avec un argument
Une séquence de nombres de 0 jusqu'àarrêter(ouarrêter-1) sera généré :
De 0 à 10
ma_liste= plage(10)
imprime_ma_liste
De 10 à 20
ma_liste= plage
( , 10
20)
imprimerma_liste
De 10 à 30, 2 par 2
ma_liste= plage(10 , 20, 2)
imprimermon_liste
Nous utilisonsplage()dans de nombreuses situations différentes, en particulier avecpourdes boucles. Elles sont très utiles pour créer
données arbitraires pour jouer avec des listes !
3.1.5 Découpage
Encore exactement semblable à ce que vous avez vu pour les chaînes...
chiffres
= plage(20)
imprimer 'chiffres[5:10]', chiffres
[ 5: 10]
print'digits[5:] ' , chiffres
[ 5:]
imprimer 'chiffres[:15]' , chiffres[:15
]
imprimer 'chiffres[::2]' , chiffres[::
2]
print'digits[::3] ' , chiffres[::3]
imprimer 'chiffres[5:15:2]' [ 5: 15:2]
, chiffres
imprimer 'chiffres[5::2]', chiffres
[ 5:: 2]
Pour ajouter un nouvel élément à la fin de la liste, vous devez [Link]()Pour supprimer, vous devez utiliser
[Link]()fonction. Pour retirer d'une position spécifique, [Link](index) .
Essaye-le :
bases. ajouter
( 'U')
imprimer les bases
bases . retirer
( 'U')
imprimerlesbases
3.1.7 Existence
De même, vous pouvez utiliserdansvérifier l'existence d'un élément.
3.1.8 Joindre
.joindreaccepte une liste d'éléments et un délimiteur, puis convertit tous les éléments en unchaîneet utilisez ce délimiteur pour
concaténer les éléments.
list_1= [ 1, 2, 3, 4]
list_2= [ 5, 6, 7, 8]
list_1+=list_2
imprimerliste_1
list_1= [ 1,2,3,4]
26PARTIE 1: Introduction à la programmation Python
list_2= [ 5,6,7,8]
liste_1 (liste_2)
. étendre
liste_impression_1
Si vous souhaitez apporter des modifications à tous les éléments d'une liste, ou filtrer certains éléments d'une liste,
vous allez adorer la compréhension par liste.
Exemple 1 : Nous avons une liste de contenus en GC calculés, mais nous voulons les exprimer tous comme un
pourcentage (signification : chaque élément de la liste * 100)
Exemple 2 : Nous avons une liste de températures en Celsius et voulons les convertir en Fahrenheit.
Exemple 3 : Nous avons du texte et nous voulons le diviser en ses mots en fonction des espaces.
entre. Puis, pour l'améliorer, nous voulons retirer tous les caractères inutiles de chaque mot, et
alors supprimer tous mots leur longueur est moins que 3.
mots = La programmation est l'une des branches les plus difficiles de l'appliquée
mathématiques ; les mathématiciens les plus pauvres ont intérêt à rester purs
mathématiciens. . diviser ( ' ')
Imprimer 'Avant le filtre :\n' , mots
mots = [ w strip'
. (;') pour w en mots si long ( w) > 3]
print'Après filtre: ' , mots
PARTIE 1 : Introduction à la programmation Python
Comme vous le voyez, nous pouvons aromatiser les compréhensions de liste avecsipour créer un filtre simple. Dans ce cas, chaquemotlequel
est dans une variable temporaire sera conservé si sa longueur est supérieure à 3, ainsi que tout espace ou caractère de
le début ou la fin sera supprimé.
Il y a deux façons ! Si vous voulez vérifier l'existence d'un élément dans une liste :
Souviens-toi simplement que si cela n'existe pas, Python renverra une exception ! Il n'y a pas de -1 ! Pour gérer cela, tu dois
soyez capable de gérer les exceptions !
3.2 Tuple
Syntaxe :
Les parenthèses sont facultatives. Mais, quels sont les avantages des tuples par rapport aux listes ? Lisez la suite et voyez !
3.2.2 Déclaration
De la même manière que des listes, mais au lieu de crochets, vous devez utiliser des parenthèses !
PARTIE 1 : Introduction à la programmation en Python
(3.12345 , 101.23423
imprimerl'emplacement
Immutable
Oui, les tuples sont immuables et vous ne pouvez pas les modifier ! Comme les chaînes.
3.2.4 Découpage
Encore similaire à la liste...
(34 , 45,12,'activé'
imprimer_donnée_point
[ 0: 2]
imprimer_point_de_données
4] [ 1:
printdata_point[:: 2]
3.2.5 Déballer
Le terme 'unpack' a une longue histoire en Python. Ici, cela signifie décompresser les éléments d'un tuple en différents.
variables. Regardez le prochain exemple où les trois éléments d'un tuple sont décompressés en trois variables.
point= ( 3, 4, 5)
x, y, z = point
imprimerx + y + z
point = 3, 4, 5
x, y, z = point
imprimerx + y + z
29PARTIE 1 : Introduction à la programmation Python
Si vous vous demandez quelle est la véritable application de unpack, je devrais dire faites-moi confiance, nous en avons besoin dans
de nombreuses applications différentes et je vais vous les montrer dans un chapitre ultérieur.
point= ( 1, 2, 3)
#Convertir un tuple en liste
liste de = points ( )
type d'impression ( point )
type d'impression ( liste_de_points
)
data= [ 4, 5, 6]
#Convertir une liste en tuple
données_tuple= tuple ( données
)
imprimer le type
( data_tuple
)
db= [
( tom , 23, math
( jack , 23, math
( Jean , 26, ordinateur)
]
pourétudiantindb :
print'Nom:' , étudiant
[ 0Âge : [ 1Course
, étudiant , étudiant
Dans ce type de parcours, nous accédons à chaque élément du tableau un par un, y compris le nom récupéré, l'âge,
et bien sûr en se référant à leur index ! Mais ce n'est pas pythonique, refaisons-le !
db= [
( tom , 23, 'math') ,
( jack , 23, 'math') ,
( Jean , 26, ordinateur)
]
prénom , âge, coursindb :
print'Nom:' , nom , Âge : , âge, Cours : , cours
PARTIE 1 : Introduction à la programmation Python
3.2.8 Avantages
Tout a ses avantages et ses inconvénients ! Les tuples sont nettement plus rapides que les listes dans
Construction
tuples !
Dictionnaire
Les dictionnaires sont une collection d'éléments sous la forme d'une paire (clé, valeur), ce qui signifie que chaque élément est identifié.
par une clé, donc d'une certaine manière, c'est une table de hachage où à chaque élément une clé unique est attribuée.
Les listes sont des ensembles ordonnés d'objets, tandis que les dictionnaires sont des ensembles non ordonnés. Mais la principale différence est que
Les éléments d'un dictionnaire sont accessibles par des clés et non par leur position.
Exemple :
Que pouvez-vous dire sur ces cinq valeurs ? Par exemple, si le langage d'intérêt de Tom est Java, ou Java est le
langue qu'il n'aime pas ? Ou si vous voulez avoir son pays, vous devez toujours vous souvenir de sa position
c'est 3 (student_record_list[3])!! Que se passe-t-il s'il y a plus de champs ! Mais maintenant regardez ceci
student_record_dict= {
nom Tom
23 : ,
niveau académique
: BSc ,
Italie : ,
langage_de_programmation
: Java
}
Manietnance,t'sptulscalernitegilbielS
!viousavezbesonideconnaretîsonpayds,emandezsm
i pelmen.t
3.3.1 Déclaration
Il existe plusieurs approches pour créer un dictionnaire. En voici quelques-unes :
PARTIE 1 : Introduction à la programmation en Python
Dictionnaire vide
country_codes= {}
#ou
codes_pays = dict()
imprimer_codes_de_pays
imprimer le type (codes_pays)
Initialisation directe
codes_pays = dict([
( Malaisie , 'MS')
( Chine , ZH
( Iran , 'IR')
( Amérique , US
imprimer_codes_de_pays
États-Unis
imprimer'Malaisie'dans les codes pays
Clés :.clés()
Valeurs :.valeurs()
Vous pouvez également créer une liste de tuples binaires avec :.items()
Tout comme pour le parcours d'une liste, vous pouvez parcourir un dictionnaire en utilisant unpourboucle..items()renvoie une liste
de tuples binaires contenant des paires clé-valeur de dictionnaire.
Essayons :
prénom , codeincountry_codes.items():
affichenom , '=>', code
Les valeurs d'un dictionnaire peuvent être de n'importe quel type de données. Mais les clés doivent être immuables.
!
Par exemple, vous ne pouvez pas utiliser une liste comme clé. Mais que faire si nous devons le faire ?! Par exemple, nous voulons utiliser 2D
coordonnées de plusieurs points sur une carte en tant que clé de dictionnaire et ensuite quelques données pour ce point !
Maintenant, imaginez que nous avons une base de données GEO, voyons ce qui va se passer :
Le dictionnaire est la meilleure approche pour décrire un objet du monde réel dans l'ordinateur. Par exemple, si vous parlez
à propos d'un livre, peut-être que vous utilisez le dictionnaire suivant pour décrire ce livre.
book= {
titre Apprendre Python
2014 : ,
auteur tom
prix : 100,00
}
Nous avons maintenant un dictionnaire de livres contenant des informations pertinentes pour ce livre !
book= {
titre : Apprendre Python
,
2014 : ,
'author':['tom', jack , john
100,00 :
}
En fait, un dictionnaire peut contenir n'importe quoi comme une liste ! Une autre chose est que, lorsqu'un dictionnaire peut contenir n'importe quoi.
Sinon, un dictionnaire peut contenir un autre dictionnaire pour créer une structure plus complexe.
PARTIE 1 : Introduction à la programmation Python
book= {
titre : Apprendre Python,
2014 : ,
'author':['tom', jack , 'john']
'address':{
KL
rue : JS23/34.5 ,
postal 55100
},
'price':100.00
}
Suivez simplement ce que vous avez appris jusqu'à présent. N'oubliez pas que vous pouvez accéder à chaque élément par sa clé.
Maintenant, si la valeur est un dictionnaire par elle-même, vous pouvez continuer à avoir accès à des éléments imbriqués avec leurs nouveaux
clés aussi.
Considérez l'accès suivant.
book= {
titre : Apprendre Python ,
2014 : ,
'author':['tom', jack , john
'address':{
ville : KL ,
rue : JS23/34,5 ,
code postal : 55100
},
prix : 100.00
}
#accès simple
titre du livre imprimé
[ ]
#accès à la liste
livre imprimé [ auteur ]
livre imprimé [ author 2]
Maintenant, il est possible d'avoir une liste de ce genre de dictionnaire de livres, et cela serait d'un type non relationnel.
base de données. Certains livres ont une adresse, d'autres n'en ont pas. Certains livres ont des éléments nouveaux imprévisibles.
des champs ! Mais nous n'aurons aucune préoccupation. Nous parlerons de base de données non relationnelle ou non-SQL plus tard.
Supprimer un élément
Vous pouvez supprimer une valeur de dictionnaire en faisant référence à sa clé. Il suffit d'utiliser lesupprimeropérateur avec une clé pertinente,
Vous pouvez fusionner deux dictionnaires en appelant [Link] à jour()fonction. De nouvelles clés seront ajoutées à l'actuel
dictionnaire et pour les clés qui existent déjà, leurs valeurs seront mises à jour.
Malheureusement, une fois de plus, Trinket nous fait défaut. Vous devez exécuter ce code dans votre
propre IDE / ligne de commande
order= {
identifiant
: A123 ,
article C# ,
type_d'élément: livre ,
qté : 1,
État : en_cours
}
imprimer la commande
order. update({
état : acheté ,
prix : 200,00
})
imprimer la commande
PARTIE 1 : Introduction à la programmation Python
3.4 Ensemble
Les ensembles sont comme ce que vous avez vu au lycée : la théorie des ensembles ! Les ensembles sont une collection d'objets, sans aucune
duplication et pas d'ordre entre les éléments ! Et en Python, les ensembles sont une collection mutable et univoque (sans
s = set([3, 4, 4, 5, 6])
imprimers
3.4.1 Déclaration
Il existe différentes approches pour créer des ensembles...
Ensemble vide
s = ensemble()
imprimers
longueur d'impression
( s)
type d'impression ( s)
Initialisation directe
s = definir([
1, 2, 3, 4, 5, 4, 4, 6,7]
s
imprimer
data= [ 1, 2, 3, 3, Bonjour
t = ( 1, 2, 3, 3, Salut
imprimer ensemble( données
)
imprimerset ( t)
s = ensemble([
1,2,3,4,5])
imprimer[3]
s
Cependant, il y a une astuce ! Convertissez d'abord votre ensemble en liste à la volée, puis essayez d'accéder à cette position !
Pour ajouter un nouvel élément à un ensemble, vous pouvez utiliser l'une des deux approches. L'une d'elles est [Link]()fonction de
l'ensemble.
s = ensemble([
1,2,3,4]
(5)
s. ajouter
imprimers
Et l'autre utiliseunionc'est exactement la même chose que vous avez vue en mathématiques. Mais parlons de
plus tard.
Comme nous l'avons dit plus tôt, en Python, l'ensemble vous fournit la théorie des ensembles ! Cela signifie que nous avons l'union, l'intersection, et
Exemple : Imaginez que nous avons trois ensembles de données provenant de dizaines de personnes ! Ceux-ci ont été enregistrés
pour l'atelier INTRO, l'atelier WEB et l'atelier DB. Maintenant, nous allons avoir quelques
rapports intéressants.
introduction
= set(["Tom", Jake , Jean , Éric
web = set(["Tom",
, "Jake", Jill Mac
bd = set(["William", "Andy"])
#Union de deux ensembles : Trouvez toutes les personnes qui se sont inscrites à un atelier
Intersection de deux ensembles : Les personnes se sont inscrites pour les deux
imprimer 'intro & web = ' . intersection(web)
, introduction
print'intro & web = , introduction
& web
Intersection de deux ensembles : Des personnes se sont inscrites à la fois pour l'intro et la db
Différence de deux ensembles : Les personnes se sont inscrites pour l'introduction mais pas pour
Web
imprimer'intro - web = ' . différence(web)
, introduction
print'intro - web = ' , introduction
- web
#Différence symétrique entre deux ensembles : Les personnes qui assistent seulement à l'un
des ateliers
print'intro ^ web = ' , [Link]érence_symétrique(web)
PARTIE 1 : Introduction à la programmation en Python
Supprimer un élément
s1 = ensemble([
1, 2,3,4,5,6]
impressions1
(6 )
s1 . supprimer
impressions1
Si l'élément donné n'existe pas, vous verrez une erreur. Mais il existe une autre méthode..jeter()cela
supprime uniquement en cas d'existence, et aucune erreur ne sera soulevée.
1, 2, 3, 4, 5,6])
s1 = ensemble([
impressions1
s1. jeter ( 6)
imprime1
s1. jeter ( 6)
impressions1
Rappelle-toi qu'unensembleest mutable, c'est pourquoi quand vous [Link](), cela va changer son propre objet !
Vider un ensemble
1, 2, 3, 4, 5,6])
s1 = ensemble([
impressions1
s1. effacer()
impressions1
Faire un clone
1, 2, 3, 4, 5,6])
s1 = ensemble([
s1_clone = [Link]()
s1_clone. effacer()
impressions1
39PARTIE 1 : Introduction à la programmation Python
Syntaxe :
si<condition>:
< bloc de code >
elif<condition>:
< bloc de code >
elif<condition>:
< bloc de code >
sinon :
< bloc de code >
Dans lequel :
Les clausessinon sietautresont optionnels. Il peut y avoir plusieurselifsparsi, mais seulement unautreà
la fin.
Les parenthèses ne sont nécessaires que pour éviter l'ambiguïté.
4.1.2 INDENTATION !
Regardez la structure if-else ci-dessus. En C, les blocs sont définis par les accolades englobantes { et }.
Le niveau d'indentation (espaces vides) avant les instructions de code n'a pas d'importance (complètement facultatif).
En Python, la région d'un bloc de code est définie par l'indentation (généralement une tabulation ou quatre espaces). Cela
cela signifie que nous devons faire attention à indenter notre code correctement, sinon nous obtiendrons des erreurs de syntaxe.
déclaration1
= Vrai
si déclaration :1
ifstatement2 :
print("à la fois statement1 et statement2 sont )vrais"
PARTIE 1 : Introduction à la programmation Python
# Mauvaise indentation !
ifstatement1 :
si déclaration :2
print("les deux énoncés1 et énoncé2 sont vrais") Cette ligne n'est pas
appropriément indenté
Ne vous trompez pas. Dans l'exemple suivant, les deux impressions appartiennent au même bloc.
Faux
si déclaration :1
print("imprimé si l'instruction if1 est
) True")
instructionSi1
:
imprimer("imprimé si l'instruction 1 )est vraie")
poids = 85,0#indiquez votre propre poids, nous allons voir comment vous êtes en forme
tu es, ne sois pas timide ;)
hauteur= 1.83
indice= de masse corporelle = poids / (hauteur) ** 2# votre formule d'indice de masse corporelle
Si le bloc de code est composé d'une seule ligne, il peut être écrit après deux points :
4.1.3 IF en ligne
À partir de la version 2.5, Python prend en charge l'expression :
Jusqu'à présent, nous avons assigné des variables nous-mêmes, mais dans un modèle plus réaliste, nous devons lire une valeur de
utilisateur et cela peut être fait en utilisantentrée(message)fonction. L'entrée imprime d'abord lemessageet attend
l'utilisateur doit entrer une valeur et appuyer sur le bouton entrer, alors cette valeur sera renvoyée. Exactement commecinen C ou
[Link]()en C#.
Regardez la dernière [Link] num % 2 == 0alors nous imprimons "Pair", sinon (sinon'Bizarre'.
Les boucles sont des structures répétitives, elles sont généralement utilisées pour analyser des collections de données, comme les lignes d'un fichier ou
enregistrements d'une base de données.
Un type de boucle est la boucle compteur, qui est un type simple de boucle qui se répétera un nombre fixe de fois.
fois. Cette boucle appelée unpourboucle.
La version Pythonique pour celapourune boucle peut être réalisée en utilisant leplage()fonction. Souviens-toi
celaplage(début, fin, pas)génère une séquence de nombres entiers, et vous pouvez l'utiliser comme compteur
pour votre boucle.
Dans cette version, nous avons une séquence ou une collection d'éléments, et nous allons parcourir la séquence.
et jouons avec tous les articles un par un. Voyons un exemple...
Alors regardez cecipour mot dans [Link](' '):. D'abord,[Link](' ')renvoie une liste de mots qui
sont générés en divisant le texte en fonction des espaces. Ensuite, notre boucle commence à itérer à travers cette liste
et ramasser ces mots un par un, et les renvoyer pour vous dans lemot .
Si vous êtes familier avecpour chaqueen C# ou Java, vous pourriez le trouver similaire.
En fait, chaque fois que vous ne vous souciez pas de la position d'un élément à l'intérieur d'une collection, il n'est pas nécessaire.
utiliser une boucle compteur :
Permets-moi d'ajouter quelque chose d'autre, rappelle-toi des compréhensions de liste et de leur beauté. La plupart du temps.
Chaque fois que vous ne voulez pas faire beaucoup de choses dans votre boucle, vous pouvez utiliser la compréhension de liste. Allons-y.
réécrivez notre exemple en utilisant la compréhension de liste.
words= [ w. décaper
( '.').lower()pour w [Link](' ')
imprimer des mots
pour w dans["Python"
, est , génial
w
imprimer
Itérer un tuple
Itérer un dictionnaire
tandis queexécute simplement un bloc de code jusqu'à ce qu'une condition donnée soit remplie. Letandis quela boucle est appropriée lorsque
il n'y a aucun moyen de déterminer combien d'itérations auront ou devront se produire.
Syntaxe :
tant que<condition>:
< bloc de code>
PARTIE 1 : Introduction à la programmation Python
porter
pause
sinon :
< bloc de code
Le bloc de code à l'intérieur dutandis quela boucle est répétée tant que la condition de boucle est évaluée comme vraie.
Exemple :
Comme vous le voyez, chaque fois que nous avons des nombres pairs, nous sautons au cycle suivant, et lorsque nous atteignons 8, nous
4.2 Fonctions
Nous utilisons des fonctions pour avoir de la modularité. Cela signifie que nous mettons notre code précieux dans ces boîtes pour les réutiliser.
Encore et encore ! De cette manière, nous apporterons une sorte de brique logique à notre application.
Une fonction est un bloc de code organisé et réutilisable qui est utilisé pour effectuer une seule action liée.
offrir une meilleure modularité pour votre application et un degré élevé de réutilisabilité du code.
PARTIE 1 : Introduction à la programmation Python
Comme vous le savez déjà, Python vous offre de nombreuses fonctions intégrées commeimprimer(), etc. mais vous pouvez aussi créer
vos propres fonctions. Ces fonctions sont appelées fonctions définies par l'utilisateur.
4.2.1 Déclarez-le !
Une fonction en Python est définie à l'aide du mot-clédéf, suivi d'une fonctionnom, une signature au sein de
parenthèses(), et un deux-points:. Le code suivant, avec un niveau d'indentation supplémentaire, est la fonction
corps.
Voyons un exemple...
imprimerCercle (10)
a = cercle( 5)
imprimer 'Zone' , a
défmax ( x, y):
m = x si x >= y sinon y
retourner m
imprimermax ( 10, 5)
imprimermax ( y= 10, x=5)
Vous verrez le principal avantage des arguments de mot-clé dans la section suivante.
Les Doc Strings sont des chaînes de caractères qui sont attachées aux fonctions en Python. Dans les fonctions, les Doc Strings sont placées à l'intérieur
définir cercle(rayon) :
"""
Calculez la surface d'un cercle pour le rayon donné
46PARTIE 1 : Introduction à la programmation Python
"""
zone = 3,14 * rayon 2
aire de retour
aider
( cercle)
définir un cercle
( rayon , pi = 3,14):
"""
Calcule l'aire du cercle pour le rayon donné
"""
zone = pi * rayon 2
zone de retour
Maintenant, vous pouvez appelercerclesans rien passer pour lepiargument alors la valeur par défaut sera sélectionnée,
ou vous pouvez passer une nouvelle valeur et remplacer la version par défaut.
imprimer_cercle ( 10)
imprimerle cercle ( 10, 2.6)
#Si vous essayez d'appeler un argument avec le style de mot-clé, alors l'ordre ne pas
matière
imprimer cercle ( pi = 2.6, rayon = 10)
C'est une grosse erreur circle(pi = 2.5, 10), essayez d'éviter cela.
defmoyenne(*args):
imprimer 'Arguments:', args
retourner somme ( arguments)/flottant
( len(args))
imprimermoyenne ( 3, 4, 5)
imprimermoyenne ( 3, 4, 5, 2, 3)
PARTIE 1 : Introduction à la programmation Python
Vous pouvez définir des fonctions qui prennent un nombre variable d'arguments de mot-clé, également.
defcréer_livre(**kwargs):
print'Arguments:',kwargs
Connectez la base de données et ajoutez le livre spécifié
créer_un_livre
( isdn= 123 , titre= C# , auteur= tom )
créer_un_livre
( isdn= 124 , titre= Java , auteur= Tom , 2005
aire_du_cercle ( r):
retour r 2 3.14
déf cercle_circonférence(r):
retourner r * 2 *
3.14
défcircle (r):
zone = r ** 2 * 3,14
circuit
= r * 2 * 3,14
zone_de_retour , cir
a, c = cercle( 10)
imprimer 'Zone:' , a, Circumference , c
f1=lambda x: x**2
# est équivalent à
deff2 (x):
retourner x**2
printf1 ( 5)
printf2 ( 5)
PARTIE 1 : Introduction à la programmation Python
Les fonctions anonymes (de première classe) sont des éléments de base de la programmation fonctionnelle, et nous les aborderons.
dans le prochain chapitre.
ajouter=lambda x, y: x + y
imprimerajouter5( 6)
D'accord, et prenons un autre exemple sale. Vous pouvez créer une fonction anonyme et l'exécuter sans
l'assigner à une variable.
imprimer(lambda x, y: x + y)( 4, 5)
C'est un paradigme de programmation déclarative, ce qui signifie que la programmation se fait avec des expressions.
Dans le code fonctionnel, la valeur de sortie d'une fonction dépend uniquement des arguments qui sont fournis en entrée.
fonction, donc appeler une fonction
f Deux fois avec la même valeur pour un argument
x produira le même résultat
f(x)les deux fois.
Éliminer les effets secondaires, c'est-à-dire les changements d'état qui ne dépendent pas des entrées de la fonction, peut le rendre beaucoup
plus facile à comprendre et à prédire le comportement d'un programme, ce qui est l'une des motivations clés pour le
développement de la programmation fonctionnelle.
L'une des choses les plus importantes en programmation fonctionnelle est les fonctions d'ordre supérieur. Une fonction d'ordre supérieur
est une fonction qui peut accepter une autre fonction comme entrée ou renvoyer une fonction comme sortie !
Voyons un exemple. Nous voulons calculer la puissance 2 de tous les nombres de 0 à 10. Nous pouvons faire cela en
en utilisantpourdes boucles, mais dans le style de programmation fonctionnelle, nous utilisonscartefonction :
Un autre exemple, à partir d'une plage de nombres, nous voulons garder uniquement les nombres pairs, encore une fois nous pouvons le faire.
Nous pouvons refaire les deux exemples, avec une compréhension de liste également.
4.4 Modules
Python contient de nombreuses fonctions intégrées qui sont fournies sous forme de bibliothèques de langage. Lorsque vous installez Python,
il est livré avec de nombreuses bibliothèques différentes pour différentes tâches. De plus, vous pouvez ajouter des bibliothèques tierces (de PyPi)
et augmentez le nombre de bibliothèques auxquelles vous avez accès lors de la programmation.
Avant cela, vous devez les importer dans votre code. En C++#inclus, en C#utilisant, en Java et
Pythonimporter.
Par exemple, nous voulons importer lemathématiquesbibliothèque et utilisez certaines de ses fonctions.
imprimermath . pi
imprimermath . √3
Au lieu d'importer toutes les bibliothèques mathématiques dans votre code et de rendre votre portée globale en désordre, vous pouvez importer
fonctions sélectionnées :
Si vous êtes paresseux et qu'il vous est difficile d'écriremathématiquesEncore et encore, vous pouvez choisir un alias plus court.
importermathas m
printpi m.
Les modules Python ne sont que des fichiers Python ordinaires. Vous pouvez écrire les vôtres et les importer. Le nom du
le module est le même que le nom du fichier.
En python, chaque fois que vous voulez créer une liste des fonctions disponibles associées à un objet, une classe, ou
utilisation de moduledir(nom de l'objet ou du module) .
importmath
dir(math)
PARTIE 1 : Introduction à la programmation Python
importer sys
sys.builtin_module_names
Python prend en charge la programmation modulaire à différents niveaux. Les fonctions et les classes sont des exemples d'outils pour
programmation modulaire de bas niveau. Les modules Python sont une construction de programmation modulaire de niveau supérieur,
où nous pouvons collecter des variables, des fonctions et des classes connexes dans un module. Un module Python est défini dans un
fichier python (avec l'extension de fichier .py), et il peut être rendu accessible à d'autres modules et programmes Python
en utilisant l'instruction d'importation.
"""
Exemple d'un module python. Contient une variable appelée my_variable.
une fonction appelée my_function, et une classe appelée MyClass.
"""
ma_variable = 0
définir_ma_fonction() :
"""
Fonction d'exemple
"""
retournerma_variable
classMaClasse:
"""
Classe d'exemple.
"""
def__init__ (soi-même):
variable
. self = ma_variable
PARTIE 1 : Introduction à la programmation en Python
définir_variable(soi-même
, nouvelle_valeur
"""
Affectez à [Link] une nouvelle valeur
"""
soi . variable = nouvelle valeur
defget_variable (soi)
variable returnself
.
Maintenant, enregistrez ce fichier [Link], puis créez un autre fichier python dans le même répertoire et au début
ligne où vous pouvez importer votre module.
importermymodule
Même vous pouvez utiliseraide()fonction pour obtenir la chaîne de documentation de votre module.
aide(mymodule)
Rappelez-vousquedanscemodule,vousavezunevariableglobale. ma_variableet un
fonctionma_fonctionet une classema_classeVous pouvez donc les utiliser comme ci-dessous.
imprimermodule. ma_variable
imprimermodule. ma_fonction()
Vouspouvezapporetrdesmodficaoitnsdynamqiuesà[Link],vouspouvez
exécutermymodule.my_variable = 20,alorssivousvoulezréinitialiseràsavaleurpardéfaut,vouspouvez
utiliserrecharger(mymodule)
.
4.5.1 Classe
Création de Classes
Les classes sont la caractéristique clé de la programmation orientée objet. Une classe est une structure pour représenter un
objet et les opérations qui peuvent être effectuées sur l'objet. En Python, une classe peut contenir des attributs
(variables) et méthodes (fonctions). Une classe est définie presque comme une fonction, mais en utilisant leclassemot-clé
et la définition de la classe contient généralement un certain nombre de définitions de méthodes de classe (une fonction dans une classe).
Chaque méthode de classe devrait avoir un argumentsoicomme premier argument. Cet objet est une auto-référence.
PARTIE 1 : Introduction à la programmation en Python
Certains noms de méthodes de classe ont des significations spéciales, par exemple :
__init__Le nom de la méthode qui est appelée lorsque l'objet est créé pour la première fois.
__str__Une méthode qui est appelée lorsqu'une simple représentation sous forme de chaîne de la classe est nécessaire, comme
par exemple, lorsqu'il est imprimé.
Créons notre première classe pour afficher un point 2D avec deux propriétés X et Y.
classPoint
"""
Une classe simple pour représenter un point dans un système de coordonnées cartésien
système.
"""
définir la traduction
( soi , dx, dy):
"""
Translatez le point par dx et dy dans les directions x et y.
"""
soi . x +=dx
soi . y +=dy
def__str__ (soi-même):
retourner("Point à [%f, %f]" % (self . x, self.y))
p2 = Point( 1, 1
imprimer(p1
)
imprimer(p2
)
PARTIE 1 : Introduction à la programmation Python
Notez que l'appel des méthodes de classe peut modifier l'état de cette instance de classe particulière, mais n'affecte pas
d'autres instances de classe ou toute variable globale.
C'est l'une des belles choses du design orienté objet : du code tel que des fonctions et des variables associées.
sont regroupées en entités séparées et indépendantes.
4.5.2 Héritage
En Python, établir une relation d'héritage entre les classes se fait en deux étapes. Tout d'abord, vous devez mentionner
le nom de la classe parente, puis à l'intérieur d'un constructeur d'enfant, vous devez appeler le constructeur de la classe parente.
point de classe
"""
Classe simple pour représenter un point dans un système de coordonnées cartésien
système.
"""
définit traduction
( soi , dx, dy):
"""
Déplacez le point de dx et dy dans les directions x et y.
"""
soi . x +=dx
soi . y +=dy
def__str__ (soi)
retourner("Point à [%f, %f]" % (self . x, soi . y))
déf__repr__ (soi-même):
retourner("Point à [%f, %f]" % (self . x, soi . y))
classePoint3D(Point):
def __init__( self, x, y, z):
Point . __init__ (soi-même
, x, y)
soi . z = z
définit traduction
( soi , dx, dy, dz):
Point. traduire ( soi , dx, dz)
soi . z +=dz
PARTIE 1 : Introduction à la programmation Python
def__str__ (soi-même):
return("Point à [%f, %f, %f]" % (self . x, soi . y, soi . z))
def__repr__ (soi-même):
retourner("Point à [%f, %f, %f]"% (self
. x, soi . y, soi . z))
p = Point3D( 4, 5, 2)
imprimerp
p. traduire ( 1, 1, 1)
imprimerp
PARTIE 1 : Introduction à la programmation Python
5 Sujets Avancés
commencez à écrire vos données, finalement vous devez fermer votre gestionnaire de fichier.
f = ouvrir
( r'c:\pycademy\[Link]', 'w')
Le premier argument est le nom de votre fichier et son chemin, puis le deuxième paramètre est votre mode d'accès au fichier. Nous avons le
modes suivants pour accéder aux fichiers ouverts.
w+ACCÈS en LECTURE et ÉCRITURE à un fichier. Écrase le fichier existant s'il existe. Si le fichier n'existe pas
existe, crée un nouveau fichier pour la lecture et l'écriture.
club. )
[Link]()
PARTIE 1 : Introduction à la programmation Python
Similaire à.écrire, vous pouvez facilement lire depuis un fichier. Encore une fois, vous devez ouvrir un fichier avec un accès en lecture, et ensuite
appeler lelireméthode.
Pour lire un fichier, vous avez différentes approches :
Que faire si le fichier que vous lisez est trop volumineux pour être chargé dans la mémoire ?
Dans cette approche, nous pouvons commencer par lire X octets du fichier, puis traiter cette quantité, et ensuite passer à la suite.
aux X octets suivants. Continuez à faire cela jusqu'à ce que vous atteigniez la fin du fichier, alors la valeur de retour serait un
chaîne vide ! Par conséquent, vous pouvez traiter facilement et efficacement de grands fichiers.
Ouvrir le coffre-fort
Si vous êtes comme moi et que vous oubliez de fermer le fichier, il existe une solution pour vous aider. Considérez le code suivant :
Dans cette version leavecgérera la fermeture du gestionnaire de fichiers. Donc, lorsque vous aurez terminé votreIOtâche le gestionnaire
sera fermé automatiquement.
Dans cette section, je vais parler de quelques éléments [Link] de niveau que nous nécessitons pour toute programmation d'E/S.
importos
.[Link](r'c:\pycademy\[Link]'):
si vous le savez
fais ta tâche
57PARTIE 1 : Introduction à la programmation Python
importos
[Link] . existe( r'c:\pycademy\[Link]'):
stat = statut
. os
( r'c:\pycademy\[Link]')
imprimerstat
printstat.st_size
Supprimer un fichier
importos
[Link] . existe(r'c:\pycademy\[Link]'):
supprimer
. (r'c:\pycademy\[Link]')
os
importos
#créer
os. créer( r'c:\test'
un répertoire
)
#à enlever
os. rmdirr
( 'c:\test' )
importos
articles = système
. listdir
d'exploitation
( r'c:/'
imprimer des articles
globest une bibliothèque qui offre une approche facile pour obtenir des listes de fichiers à l'intérieur d'un répertoire en fonction d'un donné
critères de filtrage.
importglob
fichiers= [Link]('c:/utilisateur/*.jpg')
fichiers d'impression
globeretourne une liste de chaînes dont chaque élément contient le nom de fichier et son chemin complet.
58PARTIE 1 : Introduction à la programmation Python
essayer :
# le code normal va ici
sauf
# le code pour la gestion des erreurs va ici
# ce code n'est pas exécuté à moins que le code
# ci-dessus génère une erreur
N'oubliez pas qu'une erreur est soulevée lorsque vous essayez d'accéder à un dictionnaire avec une clé qui n'existe pas ! Vous pouvez
gérez cela avecessayer-exceptionbloc
country_codes= {'Malaysia' : MS , CN
Iran : IR , Amérique 'ÉTATS-UNIS'
}
essayer :
imprimer_codes_de_pays
Italie
sauf :
print"La clé n'existe pas"
Vous pouvez obtenir plus d'informations sur l'exception levée. Voir les exemples suivants :
essayer :
5 / 0
saufExceptionas e:
Erreur : , e
passer
Temps
Ce module fournit un certain nombre de fonctions pour traiter les dates et le temps au cours d'une journée. C'est une couche mince.
au-dessus de la bibliothèque d'exécution C.
Une date et une heure données peuvent être représentées soit comme une valeur à virgule flottante (le nombre de secondes depuis un)
date de référence, généralement le 1er janvier 1970), ou sous forme de tuple de temps.
PARTIE 1 : Introduction à la programmation Python
=>
1404651432,99 secondes depuis (1970, 1, 1, 0, 0, 0)
Il y a beaucoup d'autres choses que vous pouvez faire avectempsmodule. Pour plus d'informations, vérifiezici
5.3.2 DateHeure
DateTime est un module qui fournit simplement la date et l'heure :) Vous pouvez avoir accès à la date et l'heure actuelles,
ou vous pouvez créer votre propre objet date et heure. Vous pouvez utiliser ces objets dans votre application pour comparer
date différente, requête de base de données et autres objectifs. Les objets du type date représentent une date et un
temps dans un certain fuseau horaire.
ci-dessous.
dateheure
importerdatetime
date = . date et heure
( 2014, 7, 6, 20, 50, 10)
imprimerdate
imprimer la date . année
, date. mois , date. jour
imprimerdate . heure
, date. minute, [Link]ème
imprimerdate . microseconde
Vous pouvez également créer des objets datetime en utilisant l'une des nombreuses fonctions de fabrication intégrées (mais notez que tous
de telles fonctions sont fournies en tant que méthodes de classe, pas en tant que fonctions de module)
importerdatetime
importer le temps
PARTIE 1 : Introduction à la programmation Python
imprimerdateheure
. datetime(2014, 7, 6, 21, 41, 43)
imprimerdateheure
. date et heure
. aujourd'hui()
imprimerdateheure
. date et heure
. maintenant()
imprimerlheure. date et heure
. à partir du timestamp([Link]())
=>
2014-07-06 21:41:43
2014-07-06 20:53:33.465000
2014-07-06 20:53:46.981000
2014-07-06 20:53:59.268000
Le type de données datetime propose également d'autres méthodes de formatage, y compris la très générale strftime
méthode
importerdatetime
importer le temps
maintenant
= [Link]()
imprimer maintenant
imprimer maintenant
. ctime()
imprimermaintenant
. isoformat()
imprimermaintenant
. strftime("%Y%m%dT%H%M%S")
=>
2014-07-06 20:54:12.586000
Dim Jul 6 20:54:12 2014
2014-07-06T20:54:12.586000
20140706T205412
Python fournit une excellente bibliothèque appeléerefournir une fonctionnalité d'expression régulière.
Trouvez et associez un motif dans un grand texte basé sur une expression régulière
Remplacer des motifs définis par une expression régulière par un remplacement
PARTIE 1 : Introduction à la programmation Python
Correspondre
Cette fonction essaie de faire correspondre le motif RE à une chaîne avec des drapeaux optionnels.
Modifier Description
Interprète les mots selon la locale actuelle. Cette interprétation affecte l'alphabet.
re.L groupe ( et ), ainsi que le comportement de la frontière des mots ( et ).
Fait que $ corresponde à la fin d'une ligne (pas seulement à la fin de la chaîne) et fait que ^ corresponde au début
re.M de n'importe quelle ligne (pas seulement le début de la chaîne).
re.S Fait en sorte qu'un point (dot) corresponde à n'importe quel caractère, y compris un saut de ligne.
Interprète les lettres selon le jeu de caractères Unicode. Ce drapeau affecte le comportement de
re.U
\w, \W, \b, \B.
Permet la syntaxe d'expression régulière "cuter". Elle ignore les espaces (sauf à l'intérieur d'un ensemble [] ou
re.X lorsqu'il est échappé par un antislash) et traite le # non échappé comme un marqueur de commentaire.
[Link] fonction renvoie un objet de correspondance en cas de succès, None en cas d'échec. Nous utiliserionsgroupe(num)ou
groupes()fonction de l'objet de correspondance pour obtenir l'expression correspondante.
importer
ligne= Les chats sont plus intelligents que les chiens
matchObj = re. match( (.*) sont (.*?) .* , ligne , re.M|re.I)
ifmatchObj :
print"[Link]() : " , matchObj. groupe()
imprimer "[Link](1) : ," objetDeCorrespondance
. groupe
( 1)
print"[Link](2) : ", matchObj. groupe ( 2)
sinon :
Aucune correspondance !!
PARTIE 1 : Introduction à la programmation Python
Recherche
Cette fonction recherche la première occurrence du motif RE dans la chaîne avec des indicateurs optionnels.
Tout au sujet de cette méthode est exactement le même quecorrespondresauf un différent. Python offre deux différents
opérations primitives basées sur des expressions régulières : correspondance vérifie seulement une correspondance au début de la
la chaîne, tandis que la recherche vérifie une correspondance n'importe où dans la chaîne (c'est ce que fait Perl par défaut).
Donc, pour vérifier ou rechercher un modèle, ne PAS utilisermatchcomme cela ne vérifie nulle part.
Remplacer
Certaines des méthodes re les plus importantes qui utilisent des expressions régulières sont sub.
SYNTAX :
re. sous
( motif , répéter
, chaîne, max=0)
Cette méthode remplace toutes les occurrences du motif RE dans la chaîne parremplacer, en remplaçant toutes les occurrences
sauf si un max est fourni. Cette méthode renverrait une chaîne modifiée.
importer
2004-959-559
2004959559
PARTIE 1 : Introduction à la programmation en Python
Compiler
Chaque fois que vous devez utiliser l'une des fonctions ci-dessus fréquemment pour le même modèle, pour gagner du temps et
améliorer les performances, il est préférable de créer un objet REGEX.
En réalité, chaque fois que vous appelez l'une des fonctions ci-dessus, Python analyse d'abord le motif donné et le compile.
dans un objet intermédiaire, puis utilisez celui-ci pour la correspondance de motifs. Donc, si vous êtes à l'intérieur d'une boucle for qui
répète un million de fois, et vous recherchez un même motif parmi un million de textes différents, alors chaque
vous gaspillerez une quantité significative de temps pour chaque création factice d'un objet REGEX.
Dans ces cas, la manière rationnelle est de créer un objet REGEX avant la boucle for et ensuite de l'utiliser à nouveau et
Encore ! C'est une sorte de mise en cache !
importer
comment_compteur= [Link](r'#.*$')
téléphone
= "2004-959-559 # C'est le numéro de téléphone"
imprimer .sous( comment_matching ,"téléphone
, )
=>
2004-959-559
2034-959-559
Comme vous pouvez le voir, nous avons obtenu le même résultat, mais pour la deuxième fois, nous n'avons pas créé un autre motif.
Encore !
Maintenant, c'est le bon moment pour remettre en question ce que vous avez appris. Dans cette section, je vais partager des dizaines de
problèmes de programmation qui doivent être implémentés avec Python. Je ne vais pas vous donner les réponses. Je
J'ai besoin que tu te concentres et essaies de répondre à toutes, si tu ne peux pas, tu peux me contacter par email.
D'accord, commençons....
64PARTIE 1 : Introduction à la programmation Python
5.6.1 Arithmétique
Pour cette section, vous devez créer un fichier appelé[Link] va être votre propre module. Alors
implémentez votre code à l'intérieur de ce module. Nous allons l'utiliser comme votre bibliothèque dans la section suivante.
Pour chacun des problèmes suivants, concevez et implémentez un algorithme en utilisant Python.
[Link] à bulles
1. Installerpipetoutils_de_configuration
2. Installerpyquery
3. Installerexpéditeur
1. Dans le dossier Pycademy, créez un sous-dossier imageset ensuite copier quelques images dans le dossier.
2. UtiliserFichierZipzipphotosdossier et nommez-le '[Link]'
3. Envoyez un email et joignez le fichier compressé.
5.6.4 Html
Téléchargez le HTML pour le lien suivant
[Link]
Extraire du texte à partir de Html (en utilisant PyQuery)
Supprimer les mots vides (Les mots vides sont disponibles dans le dossier PyCademy dans le [Link])