平台无关的文件写入方式
def writeFile(filename):
prose = r"<?xml version='1.0' encoding='UTF-8'?>"
startTag = r'<Books>'
endTag = r'</Books>'
with open(filename, "+a" ) as f:
f.write(prose)
f.write('\n')
f.write(startTag)
f.write('\n')
f.write(endTag)
我该如何让这个函数在不同的平台上都能使用,这样它在Windows和Linux/Unix上都能正常工作呢?因为在Windows上,换行符是/n。
我现在使用的是Python 3.3。
1 个回答
6
你需要看看 os 这个模块。特别是要关注 os.linesep
和 os.sep
。
os.linesep
会给你正确的换行符,你不需要去检查平台或操作系统的版本。
os.sep
会给你路径中各部分的分隔符,同样,你也不需要去检查平台或操作系统的版本。