Appeler du code C depuis Python avec ctypes
On vous a dit et répété que Python c’était un super langage de glu et que ça pouvait très facilement s’interfacer avec les binaires produits par du C. Mais jusqu’à quel point ?
On vous a dit et répété que Python c’était un super langage de glu et que ça pouvait très facilement s’interfacer avec les binaires produits par du C. Mais jusqu’à quel point ?
J’ai utilisé Ubuntu 13.04 depuis quelques jours. C’est un bon cru : l’interface est fluide (n’oubliez pas d’installer preload) et quelques ajouts ergonomiques sympas ont fait leur apparition.
Je ne fais plus de tests unittaires sans pytest, et je me retrouve souvent à rentrer les mêmes paramètres de la commande encore et encore. Parfois, quand j’autilise des wrappers tels que django-pytest et pytest-django (ça s’invente pas), je ne peux même pas passer d’arguments directement à py.test
.
On peut y remedier en créer un fichier de config à la racine du projet.
L’orienté object est particulièrement adapté à la création de belles APIs. Nous allons donc étudier aujourd’hui un cas réel de mise en pratique réussi avec la lib path.py.
Vous avez mis à jour votre Python (par exemple avec homebrew ou en faisait une upgrade d’Ubuntu), et soudainement, BAM, tout exécution dans un virtualenv vous balance un gros ImportError: cannot import name MAXREPEAT
à la tronche.
Quand on commence à avoir pas mal de traffique sur son site, on commence à noter l’apparition d’une erreur inquiétante…
C’est con mais toujours bon ça savoir : si manage.py
ou django-admin
vous font des misères, vous pouvez les rendre plus verbeuses avec l’option --trace
.
A la fin de cet article, vous saurez vous sortir de toutes les situations merdiques liées aux encodages.
< Insérer ici vous-même troll sur Microsoft et LibreOffice et les formats >
C’est con mais c’est bon à savoir : si vous avez une un tâche fabric, vous pouvez tout à fait l’appeler en dehors de fabfile dans n’importe quel script Python.