Bien le bonjour.
Je suis actuellement le cour "Apprendre à programmer avec Python 3" de Gérard Swinnen.
J'en suis au chapitre 14 "Classes, méthodes, héritage".
Mais il y a quelque chose que je ne comprend pas, même 2.
Prenez le code suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
 
class Atome:
	"""atomes simplifiés, choisis parmi les 10 premiers éléments du TP"""
	table = [None, ('hydrogène', 0), ('hélium', 2), ('lithium', 4),
			 ('béryllium', 5), ('bore', 6), ('carbone', 6), ('azote', 7),
			 ('oxygène', 8), ('fluor', 10), ('néon', 10)]
 
	def __init__(self, nat):
		"le n° atomique détermine le n. de protons, d'électrons et de neutrons"
		self.np, self.ne = nat, nat  # nat = numéro atomique
		self.nn = Atome.table[nat][1]                             #ICI
 
	def affiche(self):
		print()
		print("Nom de l'élément :", Atome.table[self.np][0])
		print("%s protons, %s électrons, %s neutrons" % \
			  (self.np, self.ne, self.nn))
 
 
class Ion(Atome):
	"""les ions sont des atomes qui ont gagné ou perdu des électrons"""
 
	def __init__(self, nat, charge):
		"le n° atomique et la charge électrique déterminent l'ion"
		Atome.__init__(self, nat)                #ET LA
		self.ne = self.ne - charge
		self.charge = charge
 
	def affiche(self):
		Atome.affiche(self)
		print("Particule électrisée. Charge =", self.charge)
 
 
### Programme principal : ###
 
a1 = Atome(5)
a2 = Ion(3, 1)
a3 = Ion(8, -2)
a1.affiche()
a2.affiche()
a3.affiche()
Premièrement, pourquoi à la ligne 11, il y a écrit:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
self.nn = Atome.table[nat][1]
au lieu de:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
self.nn = self.table[nat][1]
Voila, c'est mon premier point d'incompréhension.
Le deuxieme se situe à la ligne 25:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Atome.__init__(self, nat)
Je ne comprend pas vraiment ce qu'il se passe.
On ne stocke le résultat nul part.

Voila, merci d'avance, j'espère que vous pourrez m'éclairer.