2013-01-15 27 views
8

Các mã sau ...Kiểm soát Python 3.3 stdio chấm dứt dòng trên cửa sổ 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") 

... kết quả ở đầu ra stdio kết thúc với 0x0d tiếp theo 0x0a. stdio được đặt ở chế độ nhị phân. Tại sao cuộc gọi write() vẫn thay thế \r\n cho \n?

Trả lời

1

Nếu bạn đang chạy ứng dụng này dưới Cygwin, sys.platform sẽ là 'cygwin' thay vì 'win32', nhưng bạn vẫn sẽ nhận được chuyển đổi kết thúc dòng. Bạn có chắc chắn rằng setmode thực sự đang chạy?

+0

Xin cảm ơn, nhưng Cygwin không được sử dụng. – user1981312

Các vấn đề liên quan