2015-02-13 6 views
7

numpy.savetxt() पर नई लाइन को रोकें हमेशा फाइलों के अंत में एक नई पंक्ति डालती है। क्या इस व्यवहार से बचने का कोई अच्छा तरीका है? किसी अन्य चीज़ के लिए नए लाइन चरित्र को प्रतिस्थापित करने से मदद नहीं मिलती है।numpy.savetxt() अंतिम पंक्ति

np.savetxt(modelFile, model, delimiter=",", fmt='%.3f') 
+0

कोई कोड उदाहरण नकारात्मक होना चाहिए? – Marcin

+0

लेखन कोड – chris

+2

जोड़ा गया यह पूछने लायक हो सकता है _why_ इससे कोई फर्क पड़ता है ... उदा। क्या आपके पास कुछ महत्वपूर्ण पोस्ट-प्रोसेसिंग है जो नई लाइन के कारण चकित हो रही है? – mgilson

उत्तर

5

मैं सच में यकीन है कि क्यों यह मायने रखता है नहीं कर रहा हूँ:

मुझे नहीं लगता कि यह मेरा कोड के लिए विशेष रूप से है, लेकिन लेखन इस तरह किया जा रहा है (मॉडल एक 3 डी सरणी है) , या अगर numpy पक्ष पर इसे रोकने के लिए कोई तरीका है (मैंने दस्तावेज़ों में कुछ भी नहीं देखा ...) लेकिन आप शायद लिखने के बाद फ़ाइल में वापस खोज सकते हैं और फिर छंटनी कर सकते हैं। जैसे

NEWLINE_SIZE_IN_BYTES = -1 # -2 on Windows? 
with open('data.dat', 'w') as fout: 
    np.savetxt(fout, model, delimiter=",", fmt='%.3f') 
    fout.seek(NEWLINE_SIZE_IN_BYTES, 2) 
    fout.truncate() 

नोट: पीछे की ओर की तलाश के लिए, बाइट आकार

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