केवल अंतिम परिणाम ही नहीं, जुपिटर में पूर्ण आउटपुट कैसे प्रदर्शित करें?


115

मैं चाहता हूं कि ज्यूपिटर प्रिंट का सहारा लिए बिना सभी इंटरएक्टिव आउटपुट को प्रिंट करे, न केवल अंतिम परिणाम। यह कैसे करना है?

उदाहरण :

a=3
a
a+1

मैं प्रदर्शित करना चाहूंगा



21
यह बहुत अक्सर इस्तेमाल नहीं कर रहा है, लेकिन वास्तव में एक config विकल्प है कि इस करना चाहिए है - सेट InteractiveShell.ast_node_interactivityकरने के लिए 'all'में IPython गिरी कॉन्फ़िग फ़ाइल
थॉमस के

धन्यवाद थॉमस, कि मैं क्या देख रहा था :)
mbh86

वह मौजूद है ! ! !
vasili111

जवाबों:


179

थॉमस का धन्यवाद, यहाँ वह समाधान है जिसकी मुझे तलाश थी:

from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"

2
यह एक शानदार टिप है। - केवल उत्पादन की अंतिम पंक्ति पर वापस जाने के लिए ध्वज का मूल्य क्या है?
रेब्लोचोन मस्के

12
डिफ़ॉल्ट मान है: 'last_expr'। आप यहाँ कई अन्य विकल्प पा सकते हैं: ipython.readthedocs.org/en/stable/config/options/terminal.html
mbh86

8
संदर्भ के लिए, उसके लिए विकल्प 'सभी', 'कोई नहीं', 'अंतिम' और 'अंतिम_सेक्स' हैं। 'अंतिम' और 'अंतिम_सेक्स' के बीच का अंतर: यदि आपका सेल समाप्त होता है, तो कहें, एक लूप जिसमें एक एक्सप्रेशन है, 'लास्ट' आपको लूप के प्रत्येक पुनरावृत्ति में उस एक्सप्रेशन से परिणाम दिखाएगा। 'last_expr' (डिफ़ॉल्ट) यह नहीं दिखाएगा: यह केवल सेल के अंत में एक नंगे अभिव्यक्ति का परिणाम प्रदर्शित करेगा।
थॉमस के

1
पवित्र मोली ... यह विशेषता एक हत्यारा है।
flow2k

last_expr_or_assignडेमो करने के लिए नया (ईश) अद्भुत है! कोई और अधिक समान आइटम को केवल प्रिंट करने के लिए प्राप्त करने के लिए एक से अधिक बार नहीं।
हेनरी स्क्रिनर

33

https://www.dataquest.io/blog/jupyter-notebook-tips-tricks-shortcuts/

1) इस कोड को जुपिटर सेल में रखें:

from IPython.core.interactiveshell import InteractiveShell

InteractiveShell.ast_node_interactivity = "all"

2) विंडोज में, नीचे दिए गए कदम परिवर्तन को स्थायी बनाते हैं। अन्य ऑपरेटिंग सिस्टम के लिए काम करना चाहिए। आपको रास्ता बदलना पड़ सकता है।

C:\Users\your_profile\\.ipython\profile_default

निम्नलिखित कोड के साथ profile_defaults में एक ipython_config.py फ़ाइल बनाएं:

c = get_config()

c.InteractiveShell.ast_node_interactivity = "all"

0

प्रति नोटबुक आधार

जैसा कि अन्य लोगों ने उत्तर दिया है, निम्न कोड को जुपिटर लैब या ज्यूपिटर नोटबुक सेल में काम करना होगा:

from IPython.core.interactiveshell import InteractiveShell

InteractiveShell.ast_node_interactivity = "all"

स्थायी परिवर्तन

हालाँकि, यदि आप इसे स्थायी बनाना चाहते हैं और Jupyter Lab का उपयोग करना चाहते हैं, तो आपको एक IPython नोटबुक कॉन्फ़िगरेशन फ़ाइल बनाने की आवश्यकता होगी। ऐसा करने के लिए निम्न आदेश चलाएँ ( यदि आप बृहस्पति नोटबुक का उपयोग नहीं करते हैं - तो नीचे अधिक विवरण देखें):

ipython profile create

यदि आप Jupyter नोटबुक का उपयोग कर रहे हैं, तो यह फ़ाइल पहले ही बन जानी चाहिए थी और इसे फिर से चलाने की कोई आवश्यकता नहीं होगी। वास्तव में, इस कमांड को चलाने से आपकी वर्तमान प्राथमिकताएँ अधिलेखित हो सकती हैं।

एक बार जब आप इस फाइल को बना लेते हैं, ज्यूपिटर लैब और नोटबुक उपयोगकर्ताओं के लिए समान है, तो फ़ाइल में निम्न कोड जोड़ें C:\Users\USERNAME\\.ipython\profile_default\ipython_config.py:

c.InteractiveShell.ast_node_interactivity = "all"

मैंने पाया कि c = get_config()जुपिटर के नए संस्करणों की कोई आवश्यकता नहीं है , लेकिन अगर यह आपके लिए काम नहीं करता है, तो ऐड करेंc = get_config() तो फ़ाइल की शुरुआत में ।

के अलावा और अधिक फ्लैग ऑप्शन के लिए "all", इस लिंक पर जाएँ : https://ipython.readthedocs.io/en/stable/config/options/terminal.html#configtrait-InteractiveShell.ast_nog_interactivity

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.