2012-10-08 38 views
17

में मैं जादू IPython %paste आदेश है, जो काफी उपयोगी है, अगर आप डालने के लिए मान्य कोड है के बारे में पता कर रहा हूँ के रूप में एक स्ट्रिंग पेस्ट करें। अब मैं कोड सम्मिलित नहीं करना चाहता हूं, मैं कॉपी कॉपी बफर से कुछ स्ट्रिंग को एक चर के रूप में स्टोर करना चाहता हूं। क्या ऐसा करने का कोई आसान तरीका है, स्ट्रिंग को कुछ अलग टेक्स्ट एडिटर में कॉपी करने और इसे पहले संशोधित करने के अलावा?एक चर, नहीं के रूप में निष्पादन योग्य कोड का टुकड़ा, IPython

कुछ इस तरह अच्छा होगा, लेकिन उनमें से कोई काम कर रहे हैं:

strvar = %paste 
strvar = """%paste""" 

पी.एस. स्ट्रिंग लंबी है और इसमें विशेष वर्ण आदि शामिल हैं। इसलिए सरल ctrl-c बस कचरा और त्रुटि संदेश बनाता है।

+0

मुझे पता है कि% पेस्ट काम करता है। यह सवाल नहीं था, और मुझे आश्चर्य है कि क्या आप इस सवाल को पढ़ते हैं, इससे पहले कि आप इसे कम कर दें, ओओ – Michael

+0

यदि आप ट्रिपल कोट्स खोलते हैं और फिर क्लिपबोर्ड से पेस्ट करते हैं, तो कोई त्रुटि संदेश नहीं होना चाहिए। –

+2

नहीं, यह सिर्फ एक स्ट्रिंग, नहीं क्लिपबोर्ड के रूप में एक "% पेस्ट" देता है। – Michael

उत्तर

27
%paste strvar 

आपको कॉपी किए गए टेक्स्ट से लाइनों की एक सूची देता है। आप

strvar = '\n'.join(strvar) 

एक स्ट्रिंग में टेक्स्ट प्राप्त करने के लिए कर सकते हैं।

+0

बहुत बढ़िया, धन्यवाद! – Michael

+10

यह वास्तव में एक विशेष सूची सबक्लास है - आप न्यूलाइन-जुड़े टेक्स्ट प्राप्त करने के लिए 'strvar.n' कर सकते हैं। इसी तरह अंतरिक्ष से अलग के लिए 'strvar.s'। –