#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Héritage simple.

fichier : rectangle.py
@author: bob
"""

# Définition de classe ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
class Rectangle:
    """Définition de la classe Rectangle()."""
    
    def __init__(self, longueur=30, largeur=15):
        self.lng = longueur
        self.larg = largeur
        self.nom = "rectangle"
        
    def area(self):
        """Retourne l'aire du rectangle."""
        return self.larg * self.lng
    
    def perimeter(self):
        """Retourne le périmètre du rectangle."""
        return 2 * (self.larg + self.lng)
    
    def __str__(self):
        return f"""{self.nom} : Longueur = {self.lng}, largeur = {self.larg}, \
aire = {self.area()}, périmètre = {self.perimeter()}"""
    
class Carre(Rectangle):
    """Carre() hérite de Rectangle()."""
    
    def __init__(self, cote=10):
        super().__init__(cote, cote)  # super() pointe sur la classe mère
        self.nom = "carré"

# Programme principal ==========================================================
r = Rectangle()  # largeur et longueur par défaut
print(r)
print("~"*45)
c = Carre(15)
print(c)
