def __init__(self, path=None, mode='wt', use_gzip=False):
self.mode = mode
if path is None:
self.name = "stdout"
if 'b' in mode:
self.fd = os.fdopen(sys.stdout.fileno(), 'wb')
else:
self.fd = sys.stdout
else:
self.name = os.path.basename(path)
abspath = os.path.abspath(path)
if not os.path.exists(os.path.dirname(abspath)):
os.makedirs(os.path.dirname(abspath))
if use_gzip:
_open = lambda p, m: io.BufferedWriter(gzip.open(p, m))
else:
_open = lambda p, m: io.open(p, m)
self.fd = _open(abspath, mode)
评论列表
文章目录