2013-01-15 22 views
8

निम्नलिखित कोड पर 3.3 stdio लाइन समाप्ति ...नियंत्रण अजगर विंडोज 7

import sys 

if sys.platform == "win32": 
    import os, msvcrt 
    msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY) 

sys.stdout.write("This is a sample line of text\n") 

... stdio उत्पादन 0x0d0x0a द्वारा पीछा के साथ समाप्त होने में परिणाम है। stdio बाइनरी मोड पर सेट है। write() कॉल अभी भी \r\n को \n के लिए प्रतिस्थापित क्यों कर रहा है?

उत्तर

1

आप Cygwin के तहत इस चला रहे हैं, sys.platform'cygwin' बजाय 'win32' हो जाएगा, लेकिन आप अभी भी लाइन न खत्म होने वाली रूपांतरण मिल जाएगा। क्या आप वाकई setmode वास्तव में चल रहे हैं?

+0

धन्यवाद, लेकिन साइगविन का उपयोग नहीं किया जा रहा है। – user1981312