3.Libraries
PyLib
- Input / Output:
- Formattage de chaine:
- Formatted String Literals :
- Appelée f-strings
- Syntaxe:
F"…{var[:formattage]}…"
: permet d'inclure une expression dans la chaine
str.format()
- Conversion vers String :
repr()
: retourne une chaine interpretable par le runtime
str()
: retourne une chaine lisible par un humain
input()
: saisie utilisateur (console)
- File :
open()
: retourne un objet fichier
- Block
with/as
:
- permet d'utiliser le fichier dans le block
- Gère la fermeture auto du fichier si EOF ou exception ou tout simplement une fois le block terminé
f.close()
for line in f:
=> itère sur les lignes du fichier
f.write()
f.read([size]):
- Lit l'ensemble du fichier ou bien la taille specifiée
- "it’s your problem if the file is twice as large as your machine’s memory"
f.seek(offset, from):
- Se déplace dans le fichier selon un nombre d'octets
- Si from = 0 alors indique le début du fichier
- Si from = 1 alors indique la position courante
- Si from = 2 alors indique la fin du fichier
- Module json :
import json
- pour conversion/deconversion en JSON
json.dump(obj[, file])
:
- convertit un objet en chaine JSON
- Peut ecrire la chaine dans un fichier
json.load(file)
: converti une chaine JSON en objet
Flask
- Intro:
- https://flask.palletsprojects.com/en/1.1.x/
- Install:
pip install flask
- Lancement du serveur:
set FLASK_APP=fichier.py
flask run OU python -m flask run
- Arg "--host=0.0.0.0" autorise un accès externe au serveur
FLASK_ENV=development
- Autorise le debug
- Reload automatiquement le serveur sur changement de code
- Active le mode debug dans l'app Flask (FLASK_DEBUG=1 pour gérer ce mode séparement)
- Par défaut, une route répond au GET
- Objet
request
- Est global mais multi thread safe (notion de Context Locals)
- These objects are actually proxies to objects that are local to a specific context
- Contient toutes les infos sur la requête client
- Utiliser la fonction
test_request_context()
pour mapper un objet local au "vrai" objet pour les tests unitaires
- Objet
response
- Construit automatiquement en fonction du retour de la fonction handler
- Utiliser
make_response()
dans le handler pour obtenir l'objet de réponse courant
- Templating:
- Fichiers HTML ou autre à mettre dans \templates
- Fonction
render_template
de Flask (from Flask import render_template
)