আইপিথনে সমস্ত সতর্কতা লুকান


299

আমার একটি আইপথন সেশনের একটি স্ক্রিনকাস্ট তৈরি করতে হবে এবং দর্শকদের বিভ্রান্ত করার এড়ানোর জন্য, আমি warnings.warnবিভিন্ন প্যাকেজগুলির কল দ্বারা নির্গত সমস্ত সতর্কতাগুলি অক্ষম করতে চাই । এই ধরনের সমস্ত সতর্কতা স্বয়ংক্রিয়ভাবে অক্ষম করার জন্য আইপিথনআরসি ফাইলটি কনফিগার করার কোনও উপায় আছে কি?


3
আপনি কখন উত্তরটি গ্রহণ করতে পারবেন তা নোট করুন এবং তারপরে আপনার অন্যান্য প্রশ্নগুলি পরীক্ষা করে দেখুন এবং তাদের কোনও গ্রহণযোগ্য উত্তর আছে কিনা তা দেখুন।
ড্যান ডি

উত্তর:


715

আমি অবশেষে এটি সন্ধান। স্থান:

import warnings
warnings.filterwarnings('ignore')

ভিতরে ~/.ipython/profile_default/startup/disable-warnings.py। অন্য কেউ যদি একই সমস্যাটি আসে সে ক্ষেত্রে আমি এই প্রশ্ন এবং উত্তরটি রেকর্ডের জন্য রেখে দিচ্ছি।

বেশিরভাগ সময় এটি একবারে সতর্কতা দেখতে কার্যকর হয়। এটি দ্বারা নির্ধারণ করা যেতে পারে:

warnings.filterwarnings(action='once')

8
আইপিথন নোটবুক সতর্কতার জন্যও কাজ করে। দুর্দান্ত ফিক্স :)
কিথ হুগিট

6
@ ফ্রোজেনফ্লেম, আপনি এটিকে আবার 'ডিফল্ট' এ পরিবর্তন করুন দেখুন: ডকস.পিথন.আর
2

36
একটি নির্দিষ্ট নোটবুকে কেবল (নির্দিষ্ট) সতর্কতা দমন করতে আপনি একটি নোটবুকেও এটি কার্যকর করতে পারেন
ভাস্কো

পাইচার্মেও কাজ করে এবং কেবল আইপথনের সাথে নয়
ফিলিপ

আমার কাছে কিছু অদ্ভুত ঘটনা ঘটে, আমি কাগল নোটবুকে কাজ করি এবং আমি warnings.filterwarnings('ignore')আমার স্ক্রিপ্টের শুরুতে সেট করে দিলেও আমি যেভাবেই সতর্কতা পেতে পারি। এটি কি এই বিষয়টির সাথে সম্পর্কিত হওয়া উচিত যে আমি টিপিইউ এক্সিলারেটর ব্যবহার করি, এই ক্ষেত্রে কি টিপিইউর একটি বিশেষ আচরণ আছে ... আমি অবাক হই আমি বুঝতে পারছি না.
কাতালিনা চিরচু

57

নীচের কোডটি একটি ঘরে চালিয়ে আমি গোলাপী বাক্সগুলিতে সতর্কতাগুলি আড়াল করি:

from IPython.display import HTML
HTML('''<script>
code_show_err=false; 
function code_toggle_err() {
 if (code_show_err){
 $('div.output_stderr').hide();
 } else {
 $('div.output_stderr').show();
 }
 code_show_err = !code_show_err
} 
$( document ).ready(code_toggle_err);
</script>
To toggle on/off output_stderr, click <a href="javascript:code_toggle_err()">here</a>.''')

2
ডাউনভোট সত্ত্বেও, এখনও বিশ্বাস করুন এটি গৃহীত উত্তরের তুলনায় টগল করা সহজ, কারণ এটি একটি দরকারী টিপ ছিল।
ম্যাথিয়াশ

আমি এই সমাধান ভালোবাসি। আমি একটি বাহ্যিক মডিউলে সংরক্ষণ করেছি এবং আমদানিতে যুক্ত করেছি।
আদম

3
এটি আর জুপিটার ল্যাব নিয়ে কাজ করে না (যদিও এটি যদি দুর্দান্ত হয় তবে :)
আজাসজা

1
এটা কাজ করেছে ! গৃহীত উত্তর আমাকে সাহায্য করেনি। আপনাকে ধন্যবাদ @ মথিয়াশ
গঞ্জালো গার্সিয়া

4

গৃহীত উত্তর জুপিটারে কাজ করে না (অন্তত কিছু লাইব্রেরি ব্যবহার করার সময়)।

এখানে জাভাস্ক্রিপ্ট সমাধানগুলি কেবলমাত্র সতর্কতাগুলি লুকিয়ে রাখে যা ইতিমধ্যে প্রদর্শিত হচ্ছে তবে ভবিষ্যতে প্রদর্শিত সতর্কতাগুলি নয়।

জুপিটার এবং জুপিটারল্যাবে সতর্কতাগুলি আড়াল / লুকিয়ে রাখার জন্য আমি নিম্নলিখিত স্ক্রিপ্টটি লিখেছিলাম যা মূলত সিএসএসকে আড়াল / লুকিয়ে রাখতে সতর্কতা অবলম্বন করে।

%%javascript
(function(on) {
const e=$( "<a>Setup failed</a>" );
const ns="js_jupyter_suppress_warnings";
var cssrules=$("#"+ns);
if(!cssrules.length) cssrules = $("<style id='"+ns+"' type='text/css'>div.output_stderr { } </style>").appendTo("head");
e.click(function() {
    var s='Showing';  
    cssrules.empty()
    if(on) {
        s='Hiding';
        cssrules.append("div.output_stderr, div[data-mime-type*='.stderr'] { display:none; }");
    }
    e.text(s+' warnings (click to toggle)');
    on=!on;
}).click();
$(element).append(e);
})(true);

আমি "জাভাস্ক্রিপ্ট ত্রুটি: defined সংজ্ঞায়িত করা হয়নি" ত্রুটিটি পেয়েছি
বেন

আপনি কী ব্রাউজারে জুপিটার ব্যবহার করছেন? ভিএসকোডে নোটবুকগুলি $ (jQuery) লোড করে না
রবার্ট

হ্যাঁ, আমি (গুগল ক্রোম)
বেন

একটি যাদুমন্ত্র মত কাজ করে! ধন্যবাদ!
ডগলাস ডেলি

আমার পক্ষেও কাজ করে না। আমি বেনের মতো একই ত্রুটি পাচ্ছি (আমি জুপিটারল্যাব ব্যবহার করছি)।
টোবিয়াস বার্গকভিস্ট

2

জুপিটার ল্যাবের জন্য এটি কাজ করা উচিত (@ আলাসজা)

from IPython.display import HTML
HTML('''<script>
var code_show_err = false; 
var code_toggle_err = function() {
 var stderrNodes = document.querySelectorAll('[data-mime-type="application/vnd.jupyter.stderr"]')
 var stderr = Array.from(stderrNodes)
 if (code_show_err){
     stderr.forEach(ele => ele.style.display = 'block');
 } else {
     stderr.forEach(ele => ele.style.display = 'none');
 }
 code_show_err = !code_show_err
} 
document.addEventListener('DOMContentLoaded', code_toggle_err);
</script>
To toggle on/off output_stderr, click <a onclick="javascript:code_toggle_err()">here</a>.''')

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.