La classe Pair
Classe Pair
La classe Pair ci-dessous permet de modéliser un point du plan avec ses coordonnées cartésiennes.
🐍 Script Python
class Pair:
"""Repérage dans le plan"""
def __init__(self, x, y):
self.x = float(x)
self.y = float(y)
def __repr__(self):
return f"Pair({self.x}, {self.y})"
def __eq__(self, other):
return (self.x == other.x) and (self.y == other.y)
- On peut créer un point
Ade coordonnées \((5, 7)\) avecA = Pair(5, 7) - Les méthodes
__repr__et__eq__permettent quelques facilités d'utilisation.
Il n'est pas du tout utile de comprendre parfaitement cette construction pour faire les exercices.
Tous les exercices sont réalisables en classe de seconde.
Exemple d'utilisation
🐍 Console Python
>>> A = Pair(5, 7)
>>> A.x # l'abscisse de A
5.0
>>> A.y # l'ordonnée de A
7.0
>>> A # si on veut lire les coordonnées de A
Pair(5.0, 7.0)
>>> A == A # Un test d'égalité entre points est possible
True
- L'avant dernière instruction est possible grâce à la méthode
__repr__ - La dernière instruction est possible grâce à la méthode
__eq__
Encore une fois, il est inutile de comprendre la construction de la classe.
Il est juste utile de savoir l'utiliser !
Exercice
Avec la figure ci-dessus, munie d'un repère orthonormé, lire les coordonnées des points et compléter le code suivant.
Conseil : Utiliser le mode deux colonnes de l'éditeur !
Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier
.128013,5/f7Brnb o=ylaepcgu)vd46F13AmhtsP(S+02CD-iE050x0q0G0p0R0o0H0k0s0o0p0H0H0m010G0R0r010406050H0u0E0E0p0h0n040K0l0o0u0-0l0i050d0@0_0{0}0=0r04051d161g0d1d0=0x0R0w0#0%0)0+0F0R0t0F0o1u0F0G0:050W0j0o0q1p0(0*011t1v1x1v0G1D1F1B0G0h1e0G0F1H1r010e0Y0q0i0p0E0q010#100H0r0p0i0+0N1B1/1;1Y1J1#1F1(1*0:0a0k0I0h0l0r0l0H0R130i0k0U1-0h0h0q0s2b161_0i1e0d1W2o1T1V1U1C0x1{0+1x0i1%281B1m1o0$1I2y0R2A0i0l2E1B0r2h1e2m2o2S0?1:2c2G1Z2L0h0`0o0:0B2l2W0;2V1`2Y1J2!2$0:0N2*1;2,2m2x012;0p2%040C2^2n0=2{2/0+2~300y332`2W2|390:0c3c353e372}0l2#2 0:0z3c1h2Q162E2r0x1V2w3m0s2M1+1e3x1f3v2U172+053D0U2R3l1q2:0:0D3c0k2-2X3S0+0l0:0m3W3Y3f0:0I0X0h3t363!010/040J3:3R2H013$040L3`2.3=0E0R3h413Z3|3@0b3)3;3|3~403L2_3*3m440:0f472|3@0v3j4j3=0i0:0g4c3{1Z3~3(4h2n3X4d2Z3,3.4o3m3@3_4D3Q424e0:0Q4K4345042@4O4t490:4b4O4F4z1J4f4U3|4l040M4-1Z4q4s4G3T040O4y4Q4A3%4}484H043-0R3/4Z4_0+4M4=4+0:4g2U59014/3b584*5a4$512|4,5l4~1J4/4;5s521J4@4O3k5t380:0P5p3m4B5H4u4I565c5n3^5O3}4S5R4/325x4p5o4(4!4 044T5X4k4W3i5)3=5A2S5C5y5E040S5K4R044C2S4)5D2}5M575g5m3?0:4N635 5r685=5i4W5W6b5Y044%5}5#5d5%5U4W5k6g4L0:4r5B6l5?0A5_5$5|2+5~6c4v544J5-4#5Q6I5$5(6r4V2?5R4a6z6m5f3M5h4/5,6O6J6u5:163O0q2o2P6*3w1n3y2r2u2p0p1E6-0d3x0=6`0V0X0Z04.
# Tests(insensible à la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)