जवाबों:
warnings
मॉड्यूल के प्रलेखन से :
#!/usr/bin/env python -W ignore::DeprecationWarning
यदि आप विंडोज पर हैं: -W ignore::DeprecationWarning
पायथन के तर्क के रूप में पास करें । हालांकि, इस मुद्दे को हल करने के लिए बेहतर है, इंट का कास्टिंग करके ।
(ध्यान दें कि पायथन 3.2 में, डिफ़ॉल्ट रूप से डेप्रिसिएशन चेतावनियों को अनदेखा किया गया है।)
export PYTHONWARNINGS="ignore::DeprecationWarning:simplejson"
लिए काम किया django json deprication चेतावनियों को sorl से निष्क्रिय करने के लिए
आपको बस अपना कोड ठीक करना चाहिए, लेकिन सिर्फ मामले में,
import warnings
warnings.filterwarnings("ignore", category=DeprecationWarning)
warnings.filterwarnings("ignore", category=DeprecationWarning)
। मुझे लगता है कि आपको पुस्तकालय को आयात करने के बाद आपको इसे चलाना होगा जो कि चेतावनियों से बाहर कर रहे हैं, हालांकि मुझसे गलती हो सकती है।
from xgboost import XGBClassifier
। warnings.filterwarnings("ignore", category=DeprecationWarning)
काम करने के लिए मुझे तुरंत उस आयात से पहले रखना पड़ा ।
मेरे पास ये थे:
/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
इसे इसके साथ तय करें:
import warnings
with warnings.catch_warnings():
warnings.filterwarnings("ignore",category=DeprecationWarning)
import md5, sha
yourcode()
अब आप अभी भी अन्य सभी प्राप्त DeprecationWarning
करते हैं, लेकिन इसके कारण नहीं हैं:
import md5, sha
मुझे ऐसा करने का सबसे साफ तरीका मिला (विशेषकर खिड़कियों पर) निम्नलिखित को C: \ Python26 \ Lib \ साइट-संकुल \ sitecustomize.py में जोड़कर है:
import warnings
warnings.filterwarnings("ignore", category=DeprecationWarning)
ध्यान दें कि मुझे यह फ़ाइल बनानी थी। अगर आपका अलग है, तो निश्चित रूप से अजगर को रास्ता बदल दें।
इनमें से किसी भी उत्तर ने मेरे लिए काम नहीं किया इसलिए मैं इसे हल करने के लिए अपना रास्ता पोस्ट करूंगा। मैं निम्नलिखित at the beginning of my main.py
स्क्रिप्ट का उपयोग करता हूं और यह ठीक काम करता है।
निम्नलिखित का उपयोग करें जैसा कि यह है (इसे कॉपी-पेस्ट करें):
def warn(*args, **kwargs):
pass
import warnings
warnings.warn = warn
उदाहरण:
import "blabla"
import "blabla"
def warn(*args, **kwargs):
pass
import warnings
warnings.warn = warn
# more code here...
# more code here...
ENV PYTHONWARNINGS="ignore::DeprecationWarning"
तर्क को अंतर में बदलें। यह उतना ही सरल है
int(argument)
जब आप केवल कार्यों में चेतावनी को अनदेखा करना चाहते हैं तो आप निम्न कार्य कर सकते हैं।
import warnings
from functools import wraps
def ignore_warnings(f):
@wraps(f)
def inner(*args, **kwargs):
with warnings.catch_warnings(record=True) as w:
warnings.simplefilter("ignore")
response = f(*args, **kwargs)
return response
return inner
@ignore_warnings
def foo(arg1, arg2):
...
write your code here without warnings
...
@ignore_warnings
def foo2(arg1, arg2, arg3):
...
write your code here without warnings
...
जिस फ़ंक्शन को आप सभी चेतावनियों को अनदेखा करना चाहते हैं, उस पर बस @ignore_warnings डेकोरेटर जोड़ें
यदि आप Python3 का उपयोग कर रहे हैं तो नीचे दिए गए कोड को आज़माएं:
import sys
if not sys.warnoptions:
import warnings
warnings.simplefilter("ignore")
या यह कोशिश करो ...
import warnings
def fxn():
warnings.warn("deprecated", DeprecationWarning)
with warnings.catch_warnings():
warnings.simplefilter("ignore")
fxn()
या यह कोशिश करो ...
import warnings
warnings.filterwarnings("ignore")
अजगर ३
अपनी लाइनें लिखने से पहले याद रखने में आसान रेखाएँ नीचे लिखें:
import warnings
warnings.filterwarnings("ignore")
इसके बारे में आपको मारने के लिए नहीं, लेकिन आपको चेतावनी दी जा रही है कि आप जो कर रहे हैं, वह संभवत: तब काम करना बंद कर देगा जब आप अगले अजगर को अपग्रेड करेंगे। इंट में बदलें और इसके साथ किया जाए।
Btw। आप अपने स्वयं के चेतावनी हैंडलर भी लिख सकते हैं। बस एक फ़ंक्शन असाइन करें जो कुछ भी नहीं करता है। एक कस्टम स्ट्रीम के लिए अजगर चेतावनी को पुनर्निर्देशित कैसे करें?
/usr/bin/env: python -W ignore::DeprecationWarning: No such file or directory
त्रुटि मिलती है । यह काम करता है अगर मैं-W ignore::DeprecationWarning
कमांड-लाइन पर विकल्प के साथ अजगर चलाता हूं , लेकिन / usr / bin / env इसके साथ सौदा नहीं करता है।