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

robot_b.py 2.3 KiB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. import random
  2. class Robot:
  3. def __init__(self):
  4. self._nom = None
  5. self._éteint = True
  6. def nom(self):
  7. nom = self._nom
  8. return nom
  9. def démarre(self):
  10. if self._nom is None:
  11. self._nom = faire_un_nom()
  12. else:
  13. pass
  14. self._éteint = False
  15. def éteint(self):
  16. self._éteint = True
  17. def réinitialise(self):
  18. self._nom = None
  19. def main():
  20. robot = Robot()
  21. print("Le premier robot n'a pas encore de nom")
  22. print("La ligne suivante doit afficher None")
  23. print("01", robot.nom())
  24. print("On démarre le premier robot")
  25. robot.démarre()
  26. print("Le permier robot a maintenan un nom")
  27. print("La ligne suivante doit afficher un nom au hasard")
  28. print("02", robot.nom())
  29. print("Le nom ne change pas tant que le robot n'est pas re-initialisé")
  30. print("La ligne suivante doit afficher le même nom que la ligne 02")
  31. robot.éteint()
  32. robot.démarre()
  33. print("03", robot.nom())
  34. print("Le nom est effacé quand on réinitialise le robot")
  35. print("La ligne suivante doit afficher None")
  36. robot.réinitialise()
  37. print("04", robot.nom())
  38. print("Un nouveau nom est généré quand on re-démarre le robot")
  39. print("La ligne suivante doit afficher un nom différent de la ligne 03")
  40. robot.démarre()
  41. print("05", robot.nom())
  42. def donne_lettre_au_hasard():
  43. index = random.randint(0, 25)
  44. liste_de_lettres = [
  45. "A",
  46. "B",
  47. "C",
  48. "D",
  49. "E",
  50. "F",
  51. "G",
  52. "H",
  53. "I",
  54. "J",
  55. "K",
  56. "L",
  57. "M",
  58. "N",
  59. "O",
  60. "P",
  61. "Q",
  62. "R",
  63. "S",
  64. "T",
  65. "U",
  66. "V",
  67. "W",
  68. "X",
  69. "Y",
  70. "Z",
  71. ]
  72. lettre = liste_de_lettres[index]
  73. return lettre
  74. def donne_chiffre_au_hasard():
  75. index = random.randint(0, 9)
  76. liste_de_chiffres = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"]
  77. liste_de_chiffres = "1234567890"
  78. chiffre = liste_de_chiffres[index]
  79. return chiffre
  80. def faire_un_nom():
  81. nom = (
  82. donne_lettre_au_hasard()
  83. + donne_lettre_au_hasard()
  84. + donne_chiffre_au_hasard()
  85. + donne_chiffre_au_hasard()
  86. + donne_chiffre_au_hasard()
  87. )
  88. return nom
  89. main()