2016-02-28 10 views
5

पर लाइन द्वारा पायथन लिखने की रेखा मैं पाइथन लिपि से एक पाठ फ़ाइल में परिणाम आउटपुट करने का प्रयास कर रहा हूं जहां प्रत्येक आउटपुट को लाइन में सहेजा जाना चाहिए।एक पाठ फ़ाइल

f1=open('./output.txt', 'a') 
f1.write(content + "\n") 

जब मैं नियमित notepad परिणाम इस तरह दिखना साथ output.txt खोलें:

color amber color aqua color analysis color app color adobe color alive app 

हालांकि, जब मैं notepad++ साथ फ़ाइल को खोलने के लिए यह ठीक लग रहा है और प्रत्येक शब्द एक लाइन पर सहेजा गया है।

स्क्रिप्ट कैसे परिणाम लाइन-दर-रेखा को सहेज सकता है ताकि यह नियमित नोटपैड पर दिखाई दे?

+2

देख http://www.cs.toronto.edu/~krueger/csc209h/tut/line-endings.html आपको चाहिए विंडोज –

+0

पर '\ r \ n' का उपयोग करें आप किस प्रकार की पायथन का उपयोग कर रहे हैं? – AChampion

+0

क्या आप नोटपैड ++ के अंदर अंतिम वर्ण प्रदर्शित कर सकते हैं ताकि हम देख सकें कि क्या हो रहा है? (देखें [यहां] (http://stackoverflow.com/a/1446382/1559401) उस सुविधा को कैसे सक्षम करें) – rbaleksandar

उत्तर

6

ठीक है, आपके पास समस्या है नोटपैड के लिए गलत लाइन समाप्ति/एन्कोडिंग है। नोटपैड विंडोज़ लाइन लाइनिंग का उपयोग करता है - \r\n और आप \n का उपयोग करते हैं।

5

आप ओएस निर्भर लाइन विभाजक, जैसे इस पर गौर कर सकते हैं:

import os 

with open('./output.txt', 'a') as f1: 
    f1.write(content + os.linesep) 
+4

मैंने इसे 'आधिकारिक दस्तावेज़ीकरण] (https://docs.python.org/2/library/os.html#os.linesep) के कारण' os.linesep' – rbaleksandar

+3

पर अच्छा बिंदु के कारण वोट दिया, लेकिन फिर ओपी चाहिए 'कोई समस्या नहीं है, लेकिन वे' 'r \ n' 'लिखने का सुझाव दे रहे हैं, जिसका मैं जवाब दे रहा था -' os.linesep' का उपयोग करके अधिक पोर्टेबल है। – AChampion

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