Não pode escolher mais do que 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
Este repositório está arquivado. Pode ver ficheiros e cloná-lo, mas não pode fazer envios ou lançar questões ou pedidos de integração.

python-S02-E11.md 1.7 KiB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. % Programmation avec Python (Épisode 11)
  2. % Dimitri Merejkowsky
  3. # Quiz
  4. #
  5. ```python
  6. class A:
  7. def méthode_dans_a(self):
  8. print("dans A")
  9. class B(A):
  10. def méthode_dans_b(self):
  11. print("dans B")
  12. b = B()
  13. print(b.méthode_dans_a())
  14. ```
  15. \vfill
  16. 1. Erreur
  17. 2. Affiche 'dans A'
  18. #
  19. ```python
  20. class A:
  21. def méthode_dans_a(self):
  22. print("dans A")
  23. class B(A):
  24. def méthode_dans_b(self):
  25. print("dans B")
  26. class C(B):
  27. def méthode_dans_c(self):
  28. print("dans C")
  29. c = C()
  30. c.méthode_dans_a()
  31. ```
  32. \vfill
  33. 1. dans A
  34. 2. dans B
  35. 3. dans C
  36. #
  37. ```python
  38. class A:
  39. def __init__(self):
  40. self.attribut_de_a = 42
  41. class B(A):
  42. def affiche_a(self):
  43. print(self.attribut_de_a)
  44. b = B()
  45. b.affiche_a()
  46. ```
  47. \vfill
  48. 1. Affiche '42'
  49. 2. Erreur
  50. #
  51. ```python
  52. class A:
  53. def une_méthode(self):
  54. print("je viens de la classe A")
  55. class B(A):
  56. def une_méthode(self):
  57. print("je viens de la classe B")
  58. b = B()
  59. b.une_méthode()
  60. ```
  61. \vfill
  62. 1. je viens de la classe A
  63. 2. je viens de la classe B
  64. #
  65. ```python
  66. class A:
  67. def une_méthode(self):
  68. print("je viens de la classe A")
  69. class B(A):
  70. def une_méthode(self):
  71. super().une_méthode()
  72. print("je viens de la classe B")
  73. b = B()
  74. print(b.une_méthode())
  75. ```
  76. \vfill
  77. 1. Affiche 'je viens de classe A' puis 'je viens de la classe B'
  78. 1. Affiche 'je viens de classe B' puis 'je viens de la classe A'
  79. #
  80. ```python
  81. class A:
  82. def __init__(self):
  83. self.attribut_de_a = "Bonjour"
  84. class B(A):
  85. def __init__(self):
  86. self.attribut_de_b = "monde"
  87. super().__init__()
  88. b = B()
  89. print(b.attribut_de_a + " " + b.attribut_de_b)
  90. ```
  91. \vfill
  92. 1. Erreur
  93. 2. Affiche: "bonjour monde"