2010-11-26 4 views
9

मुझे एक बहुत ही बुनियादी सवाल है। मैं एक एन × 12 वेक्टरआउटपुट फ़ाइल में 80 वर्णों से अधिक लंबी लाइनें लिखें [पायथन]

y = numpy.array([V1,V2,V3,V4,V5,V6,V7,V8,V9,V10,V11,V12]) 

की गणना करने के लिए पाइथन का उपयोग कर रहा हूं जिसे मैं प्रत्येक लूप गणना के बाद जोड़ता हूं।

मेरे समस्या यह है कि जब मैं एक फ़ाइल में सहेजें या इसे प्रिंट करने की कोशिश अजगर स्वतः अपने उत्पादन आम तौर पर 200 वर्ण से अधिक है के रूप में तीन लाइनों में परिणाम टूट जाता है। इस 80 char/line व्यवहार को दबाए रखने का कोई तरीका है? अग्रिम में बहुत धन्यवाद।

+3

कुछ कोड दिखाएं। और क्या आप सुनिश्चित हैं कि फ़ाइल में वास्तव में लाइनब्रैक शामिल हैं और यह आपका टर्मिनल नहीं है या जो भी आप इसे देखने के लिए उपयोग करते हैं? – ThiefMaster

+0

ठीक है ... यह आपको दिखाने के लिए काफी जटिल है कि मैं वाई कैसे प्राप्त करता हूं लेकिन इसके लिए मेरा शब्द लेता हूं; यह एक तत्व वेक्टर है जिसमें 12 तत्व और 80 से अधिक वर्ण हैं। क्या मायने रखता है कि मैं एक फाइल खोलता हूं, f.write (str (y [:, 0])। ('[', '') को प्रतिस्थापित करें। (']', '') + '\ T' + str (y [:, 1])। प्रतिस्थापित करें ('[', '')। प्रतिस्थापित करें (']', '') + .....) और फिर इसे बंद करें। मेरा आउटपुट (बस संख्या) 3 लाइनों में दिखाया गया है। – Saki

+0

पी। यह नहीं पता कि इससे कोई फर्क पड़ता है लेकिन मैं आईडीएलई का उपयोग कर रहा हूं। – Saki

उत्तर

22

स्वरूपण को नियंत्रित करते समय आप एक पाठ फ़ाइल में सरणी सहेजने के लिए numpy.savetxt() का उपयोग कर सकते हैं। स्क्रीन पर इसे प्रिंट करने के लिए, आपके पास लाइनविड्थ को नियंत्रित करने के लिए अलग-अलग विकल्प हैं। एक को

numpy.set_printoptions(linewidth=200) 

को कॉलविड्थ को उच्च मान पर सेट करने के लिए कॉल करना होगा।

+0

thx स्वेन, यह ठीक काम करता है! अरे, वह तेज़ था! – Saki

+0

मेरे लिए, set_printoptions() के लिए लाइनविड्थ पैरामीटर का उपयोग करने पर कंसोल पर मैट्रिक्स प्रिंट करते समय बिल्कुल कोई प्रभाव नहीं पड़ता है (आउटपुट अभी भी '...' इलिप्स (दोनों आयामों में) के साथ स्वरूपित है)। अन्य विकल्प क्या हैं? – StefanQ

+0

@StefanQ इलिप्सिस के पास वर्तमान सेट लाइन चौड़ाई के साथ कुछ लेना देना नहीं है। डिफ़ॉल्ट रूप से, प्रतिनिधित्व में शामिल प्रविष्टियों की संख्या सीमित है। इसे शायद 'set_printoptions()' के साथ भी बदला जा सकता है। कृपया विवरण के लिए प्रलेखन देखें, या एक अलग प्रश्न पूछें, क्योंकि यह इस प्रश्न से पूरी तरह से असंबंधित है। –

संबंधित मुद्दे