J'ai toujours ce message :
DeprecationWarning: integer argument expected, got float
Comment faire pour que ce message disparaisse ? Existe-t-il un moyen d'éviter les avertissements en Python ?
J'ai toujours ce message :
DeprecationWarning: integer argument expected, got float
Comment faire pour que ce message disparaisse ? Existe-t-il un moyen d'éviter les avertissements en Python ?
Cela ne fonctionne pas du tout pour moi, je vois toujours des avertissements de dépréciation.
@user1244215 Je peux me tromper mais je pense que l'endroit où vous exécutez votre code a une importance. warnings.filterwarnings("ignore", category=DeprecationWarning)
. Je pense que vous devez l'exécuter après avoir importé la bibliothèque qui émet les avertissements, mais je peux me tromper.
J'avais ça :
/home/eddyp/virtualenv/lib/python2.6/site-packages/Twisted-8.2.0-py2.6-linux-x86_64.egg/twisted/persisted/sob.py:12:
DeprecationWarning: the md5 module is deprecated; use hashlib instead import os, md5, sys
/home/eddyp/virtualenv/lib/python2.6/site-packages/Twisted-8.2.0-py2.6-linux-x86_64.egg/twisted/python/filepath.py:12:
DeprecationWarning: the sha module is deprecated; use the hashlib module instead import sha
Je l'ai réparé avec :
import warnings
with warnings.catch_warnings():
warnings.filterwarnings("ignore",category=DeprecationWarning)
import md5, sha
yourcode()
Maintenant, vous avez toujours tous les autres DeprecationWarning
mais pas ceux causés par :
import md5, sha
Génial, merci beaucoup !! (Il m'a fallu un moment pour réaliser que je pouvais aussi envelopper des bouts de code non importés dans ceci, puisque certains paquets généraient aussi des DeprecationWarnings lorsqu'ils étaient utilisés après l'importation). C'est un moyen très agréable de ne faire taire que les DeprecationWarnings spécifiques que j'ai déjà regardés et que j'ai décidé d'ignorer.
Fonctionne sous Windows et Linux, et est totalement indépendant des paramètres donnés à l'exécutable. Il fonctionne donc tout le temps. En outre, il ne désactive les avertissements de dépréciation que pour les bibliothèques explicites, de sorte que lorsque les prochaines seront dépréciées, vous serez toujours informé pour mettre à jour votre code source.
D'après la documentation de l warnings
module :
#!/usr/bin/env python -W ignore::DeprecationWarning
Si vous êtes sous Windows : passez -W ignore::DeprecationWarning
en tant qu'argument pour Python. Il est préférable de résoudre le problème en coulant en int .
(Notez que dans Python 3.2, les avertissements de dépréciation sont ignorés par défaut).
J'aimerais que ça marche... Je reçois un /usr/bin/env: python -W ignore::DeprecationWarning: No such file or directory
erreur. Cela fonctionne si je lance python avec l'option -W ignore::DeprecationWarning
sur la ligne de commande, mais /usr/bin/env ne s'en occupe pas.
Vous pouvez définir la variable d'environnement PYTHONWARNINGS ; ceci a fonctionné pour moi export PYTHONWARNINGS="ignore::DeprecationWarning:simplejson"
pour désactiver les avertissements de déprédation de django json de sorl
J'ai trouvé que la façon la plus propre de le faire (surtout sous Windows) est d'ajouter ce qui suit à la section C:\Python26\Lib\site -packages \sitecustomize.py :
import warnings
warnings.filterwarnings("ignore", category=DeprecationWarning)
Notez que j'ai dû créer ce fichier. Bien sûr, changez le chemin vers python si le vôtre est différent.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
14 votes
Quand rien d'autre ne fonctionne :
$ pip install shutup
. Puis, en haut du codeimport shutup;shutup.please()
. Cela désactivera tous les avertissements.