Ver código fonte

Prepare session 2 a bit

Just in case session 1 is too short
master
Dimitri Merejkowsky 6 anos atrás
pai
commit
78f86dbe84
3 arquivos alterados com 226 adições e 10 exclusões
  1. +12
    -10
      notes/02.md
  2. +11
    -0
      sessions/01.md
  3. +203
    -0
      sessions/02.md

+ 12
- 10
notes/02.md Ver arquivo

@@ -1,20 +1,21 @@
À chaque fois, on peut faire une démo dans le repl
# Tuples

# Listes
* Attention, c'est la virgule qui fait le tuple, pas les parenthèses!
* Unpacking
* Note: can unpack lists too


* slices
* `len()`
* append, extend, insert, remove, pop, clear
* index, count, sort, reverse
# Functions

* Liste par compréhension
* Filtrage dans une compréhension

# Back to strings

# Tuples
* append, extend, insert, remove, pop, clear
* index, count, sort, reverse

* Attention, c'est la virgule qui fait le tuple, pas les parenthèses!
# Back to tuples

* Returning multiple values


# Dictionnaires
@@ -25,6 +26,7 @@
# Ensembles

* Compréhensions
* Filtres
* Les doublons sont éliminés

```


+ 11
- 0
sessions/01.md Ver arquivo

@@ -177,6 +177,17 @@ C'est le `.` qui fait le flottant

---

# Nom des variables

- Préférez des noms longs et descriptifs
- Toujours en minuscule
- Séparez les "mots" par des tirets bas (underscore)

!pycon
>>> score = 42
>>> medium_age = 22

---

# Les chaînes de caractères



+ 203
- 0
sessions/02.md Ver arquivo

@@ -0,0 +1,203 @@
# Introduction à la programmation avec Python



<p align="right">
E2L <br />
CHANGEME/2018 <br />
Dimitri Merejkowsky <br />
</p>

---

# Session 2

----

# Plan

* Retour sur le chapitre 1
* Structures de données
* Fonctions
---

---

# Retour sur input()

!python
#! À recopier
while True:
reponse = input("Votre réponse: ")


# Retour sur print()

!python
# À recopier
a = 1
b = 2
print("a=", 1, "b=2")

* `print()` insère des espaces
* et va à la ligne

---
# Retour sur print()

!python
# À recopier
a = 1
b = 2
print("a=", 1, "b=2", sep="", end="$")

---

# Retour sur les strings

---

# f-strings

Interpolation d'une variable dans une string:

!pycon
>>> a = 1
>>> b = 2
>>> f"a vaut {a} et b vaut {b}"
'a vaut 1 et b vaut 2'

Notez le 'f' avant le guillemet, et les accolades

---

# Répéter une string

!pycon
>>> "argh " * 3
argh argh argh
---

# Faire une longue string sur plusieurs lignes


!python
poeme = """\
Ceci est un poème

Qui contient "des quotes"
Et parle d'autre choses ...

"""

Marche aussi avec des "triples-simple-quotes", mais c'est moins lisible :P

---

# Concaténer des strings

!python
message = (
"Première ligne\n"
"Deuxième ligne\n"
)

Les parenthèse permettent d'aller à la ligne dans le code :)

---

# Slicer des strings

!pycon
>>> message = "Bonjour, monde !"
>>> message[0] # ça commence à zéro
"B"
>>> message[15]
"!"
>>>> message[-1] # compter à l'envers
"!"

---

# Slicer des strings (2)

!pycon
>>> message = "Bonjour, monde !"
>>> message[1:4] # début, fin
'onj'
>>> message[:7] # début implicite
'Bonjour'
>>> message[9:-2] # fin négative
'monde'

---

# Listes

---

# Créer une liste

!pycon
>>> my_list = [] # liste vide
>>> primes = [2, 3, 5, 7, 11] # liste d'entiers

---

# Listes hétérogènes

On peut mettre des types différents dans une même liste:

!pycon
>>> pommes_et_carottes = [True, 2, "three"]

Et même des listes dans des listes

!pycon
>>> liste_de_liste = [[1, 2, 3], ["one", "two", "three"]]

----

# Slicer des listes

Même principe que pour les strings!

>>> liste = [1, 2, 3]
>>> liste[0:2]
[1, 2]

---

# Modifier une liste

!pycon
>>> liste = [1, 2, 3]
>>> liste[1] = 4
>>> liste
[1, 4, 3]


*Attention*: ça ne marche pas avec les strings:

!pycon
>>> message = "Bonjour, monde !"
>>> message[-1] = "?"
TypeError: 'str' object does not support item assignment

---

# Boucles for

Itérer sur les éléments d'une liste:


!python
names = ["Alice", "Bob", "Charlie"]
for name in names:
print("Bonjour", name)

Bonjour Alice
Bonjour Bob
Bonjour Charlie

---