選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。
このリポジトリはアーカイブされています。 ファイルの閲覧とクローンは可能ですが、プッシュや、課題・プルリクエストのオープンはできません。

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"