You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

02.md 2.8 KiB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  1. # Introduction à la programmation avec Python
  2. <p align="right">
  3. E2L <br />
  4. CHANGEME/2018 <br />
  5. Dimitri Merejkowsky <br />
  6. </p>
  7. ---
  8. # Session 2
  9. ----
  10. # Plan
  11. * Retour sur le chapitre 1
  12. * Structures de données
  13. * Fonctions
  14. ---
  15. ---
  16. # Retour sur input()
  17. !python
  18. #! À recopier
  19. while True:
  20. reponse = input("Votre réponse: ")
  21. # Retour sur print()
  22. !python
  23. # À recopier
  24. a = 1
  25. b = 2
  26. print("a=", 1, "b=2")
  27. * `print()` insère des espaces
  28. * et va à la ligne
  29. ---
  30. # Retour sur print()
  31. !python
  32. # À recopier
  33. a = 1
  34. b = 2
  35. print("a=", 1, "b=2", sep="", end="$")
  36. ---
  37. # Retour sur les strings
  38. ---
  39. # f-strings
  40. Interpolation d'une variable dans une string:
  41. !pycon
  42. >>> a = 1
  43. >>> b = 2
  44. >>> f"a vaut {a} et b vaut {b}"
  45. 'a vaut 1 et b vaut 2'
  46. Notez le 'f' avant le guillemet, et les accolades
  47. ---
  48. # Répéter une string
  49. !pycon
  50. >>> "argh " * 3
  51. argh argh argh
  52. ---
  53. # Faire une longue string sur plusieurs lignes
  54. !python
  55. poeme = """\
  56. Ceci est un poème
  57. Qui contient "des quotes"
  58. Et parle d'autre choses ...
  59. """
  60. Marche aussi avec des "triples-simple-quotes", mais c'est moins lisible :P
  61. ---
  62. # Concaténer des strings
  63. !python
  64. message = (
  65. "Première ligne\n"
  66. "Deuxième ligne\n"
  67. )
  68. Les parenthèse permettent d'aller à la ligne dans le code :)
  69. ---
  70. # Slicer des strings
  71. !pycon
  72. >>> message = "Bonjour, monde !"
  73. >>> message[0] # ça commence à zéro
  74. "B"
  75. >>> message[15]
  76. "!"
  77. >>>> message[-1] # compter à l'envers
  78. "!"
  79. ---
  80. # Slicer des strings (2)
  81. !pycon
  82. >>> message = "Bonjour, monde !"
  83. >>> message[1:4] # début, fin
  84. 'onj'
  85. >>> message[:7] # début implicite
  86. 'Bonjour'
  87. >>> message[9:-2] # fin négative
  88. 'monde'
  89. ---
  90. # Listes
  91. ---
  92. # Créer une liste
  93. !pycon
  94. >>> my_list = [] # liste vide
  95. >>> primes = [2, 3, 5, 7, 11] # liste d'entiers
  96. ---
  97. # Listes hétérogènes
  98. On peut mettre des types différents dans une même liste:
  99. !pycon
  100. >>> pommes_et_carottes = [True, 2, "three"]
  101. Et même des listes dans des listes
  102. !pycon
  103. >>> liste_de_liste = [[1, 2, 3], ["one", "two", "three"]]
  104. ----
  105. # Slicer des listes
  106. Même principe que pour les strings!
  107. >>> liste = [1, 2, 3]
  108. >>> liste[0:2]
  109. [1, 2]
  110. ---
  111. # Modifier une liste
  112. !pycon
  113. >>> liste = [1, 2, 3]
  114. >>> liste[1] = 4
  115. >>> liste
  116. [1, 4, 3]
  117. *Attention*: ça ne marche pas avec les strings:
  118. !pycon
  119. >>> message = "Bonjour, monde !"
  120. >>> message[-1] = "?"
  121. TypeError: 'str' object does not support item assignment
  122. ---
  123. # Boucles for
  124. Itérer sur les éléments d'une liste:
  125. !python
  126. names = ["Alice", "Bob", "Charlie"]
  127. for name in names:
  128. print("Bonjour", name)
  129. Bonjour Alice
  130. Bonjour Bob
  131. Bonjour Charlie
  132. ---