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

01-listes.md 2.3 KiB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. +++
  2. title = "Listes"
  3. weight = 1
  4. +++
  5. # Listes
  6. // TODO: split in pages
  7. ## Définition
  8. Une liste est une _suite ordonée_ d'éléments.
  9. ## Créer une liste
  10. Avec `[]`, et les élements séparés par des virgules:
  11. ```python
  12. liste_vide = []
  13. trois_entiers = [1, 2, 3]
  14. ```
  15. ## Listes hétérogènes
  16. On peut mettre des types différents dans la même liste
  17. ```python
  18. ma_liste = [True, 2, "trois"]
  19. ```
  20. On peut aussi mettre des listes dans des listes:
  21. ```python
  22. liste_de_listes = [[1, 2], ["Germaine", "Gertrude"]]
  23. ```
  24. ## Connaître la taille d'une liste
  25. Avec `len()` - encore une fonction native
  26. ```python
  27. >>> liste_vide = []
  28. >>> len(liste_vide)
  29. 0
  30. >>> trois_entiers = [1, 2, 3]
  31. >>> len(trois_entiers)
  32. 3
  33. ```
  34. ## Concaténation de listes
  35. Avec `+`
  36. ```python
  37. >>> prénoms = ["Alice", "Bob"]
  38. >>> prénoms += ["Charlie", "Eve"]
  39. >>> prénoms
  40. ['Alice', 'Bob', "Charlie", 'Eve']
  41. ```
  42. On ne peut concaténer des listes que avec d'autres listes:
  43. ```python
  44. >>> scores = [1, 2, 3]
  45. >>> scores += 4 # TypeError
  46. >>> scores += [4] # OK
  47. ```
  48. ## Test d'appartenance
  49. Avec `in`:
  50. ```python
  51. >>> prénoms = ["Alice", "Bob"]
  52. >>> "Alice" in prénoms
  53. True
  54. ```
  55. ```python
  56. >>> prénoms = ["Alice", "Bob"]
  57. >>> "Charlie" in prénoms
  58. False
  59. ```
  60. ## Itérer sur les élements d'une liste
  61. Avec `for ... in`
  62. ```python
  63. prénoms = ["Alice", "Bob", "Charlie"]
  64. for prénom in prénoms:
  65. # La variable 'prénom" est assignée à chaque
  66. # élément de la liste
  67. print("Bonjour", prénom)
  68. Bonjour Alice
  69. Bonjour Bob
  70. Bonjour Charlie
  71. ```
  72. ## Indéxer une liste
  73. * Avec `[]` et un entier
  74. * Les index valides vont de 0 à `n-1` où `n` est la
  75. taille de la liste.
  76. ```python
  77. >>> fruits = ["pomme", "orange", "poire"]
  78. >>> fruits[0]
  79. "pomme"
  80. >>> fruits[1]
  81. "orange"
  82. >>> list[2]
  83. "poire"
  84. >>> fruits[3] # IndexError
  85. ```
  86. ## Modifier une liste
  87. Encore une assignation:
  88. ```python
  89. >>> fruits = ["pomme", "orange", "poire"]
  90. >>> fruits[0] = "abricot"
  91. >>> fruits
  92. ["abricot", "orange", "poire"]
  93. ```
  94. ## Les strings sont aussi des listes (presque)
  95. On peut itérer sur les caractères d'une string:
  96. ```python
  97. for c in "vache":
  98. print(c)
  99. v
  100. a
  101. c
  102. h
  103. e
  104. ```
  105. On peut tester si un caractère est présent:
  106. ```python
  107. >>> "e" in "vache"
  108. True
  109. >>> "x" in "vache"
  110. False
  111. ```
  112. Mais on neut peut pas modifier une string
  113. ```python
  114. >>> prénom = "Charlotte"
  115. >>> prénom[0]
  116. "C"
  117. >>> prénom[3]
  118. "r"
  119. >>> prénom[0] = "X" # TypeError
  120. ```