Przeglądaj źródła

update notes for first session

master
Dimitri Merejkowsky 6 lat temu
rodzic
commit
cb2e1e0c13
1 zmienionych plików z 17 dodań i 160 usunięć
  1. +17
    -160
      notes/01.md

+ 17
- 160
notes/01.md Wyświetl plik

@@ -1,165 +1,22 @@
### Introduction
questions préliminaires:

* Historique du langage:
* qui est sous linux?
* qui est sous mac?
* qui est sous windows?

* création par Guido pour l'enseignement
* Monty Python
* le grand schisme 2/3.
* Meilleur nul part, excellent partout
apres install de python:

* Utilisation de Python
* qui a 3.8?
* qui a 3.7?
* qui a 3.6?
* qui a 3.5? # warning: no f-string there!

* Sciences (physique, chimie ...)
* Animation
* Sites web
* ...
* Ligne de commande
* Langage de 'glue'
macOS azerty:

### Le REPL

* S'assurer que tous les étudiants peuvent lancer le REPL

Notions:

* Entiers et flottants (via maths basiques: + * - /)
* Grouper avec des parenthèses.
* Booléens
* Variables
* Fonctions:

* `quit()`



### Du code dans un fichier

Oups, les variables disparaissent quand on ferme le REPL.
Solution: les mettre dans un fichier `.py`.

```python
a = 1
b = 2

c = a+b

print(c)
```

S'assurer que les étudiants peuvent:

* `cd` dans le bon répertoire
* Lancer `python <lefichier.py`.

Notions:

* Fonction print()
* Commentaires

* Définir notre propre fonction:

* Paramètres
* Indentation
* Deux-points
* return()

```python
# ceci est un commentaire
def add(a, b):
return a + b

a = 1
b = 2
c = add(a, b)
print(c)
```


### Chaînes de caractères

* Guillemets simple et double
* Concaténation implicite
* Backslash et échappement: '\n', '\r', '\t'
* Raw string 'r'
* Triple-guillemets
* Parenthèses
* Addition avec '+'

Notions:
* types. On peut pas ajouter un entier à une strig
* conversion avec `str()`

```python
message = "Le total est: " + c
print(message)
```

* Indexation

```
+---+---+---+---+---+---+
| P | y | t | h | o | n |
+---+---+---+---+---+---+
0 1 2 3 4 5 6
-6 -5 -4 -3 -2 -1
```


* `len()`

### Flot de contrôle

* if
* while
* `break`, `continue`
* `for`
* `range()`
* On peut aussi itérer sur les strings

### Entrèe standard

* input()

Démo: "à quel nombre je pense"

```python
secret = 42

print("Devine le nombre auquel je pense"):
while True:
reponse = input()
if response > secret:
print("Trop grand")
if response < secret:
print("Trop petit")
print("Gagné")
break
```

Notions:

* Exceptions: si la conversion échoue

```python
import random

secret = random.randint(0, 100)
```


Notions:

* imports
* accès à un membre avec `.`


Des liens:

* La doc officielle (récemment traduite en français):
https://docs.python.org/fr/3/tutorial/index.html

* sametmax: http://sametmax.com/cours-et-tutos/. Note: ça y parle aussi de
cul, donc pas à mettre entre toutes les mains ;-)


* Fin!
alt et ( pour {
alt et ) pour }
shift alt et ( pour [
shift alt et ) pour ]
shift alt l pour |
shift n pour ~
shift alt / pour \