使用IPython的%%file
魔术方法将笔记本单元的内容写入当前工作目录中的文件时,是否有一种方法可以禁止执行单元时显示的Created file ...
信息文本?
有时以这种方式创建文件非常方便(例如,在使用Matlab内核时),但这在版本控制方面是一个巨大的问题,我不希望本地文件系统的结构出现在代码中其他人也在工作。
答案 0 :(得分:1)
此功能的来源
@cell_magic
def writefile(self, line, cell):
"""Write the contents of the cell to a file.
The file will be overwritten unless the -a (--append) flag is specified.
"""
args = magic_arguments.parse_argstring(self.writefile, line)
if re.match(r'^(\'.*\')|(".*")$', args.filename):
filename = os.path.expanduser(args.filename[1:-1])
else:
filename = os.path.expanduser(args.filename)
if os.path.exists(filename):
if args.append:
print("Appending to %s" % filename)
else:
print("Overwriting %s" % filename)
else:
print("Writing %s" % filename)
mode = 'a' if args.append else 'w'
with io.open(filename, mode, encoding='utf-8') as f:
f.write(cell)
File: /usr/local/lib/python3.6/dist-packages/IPython/core/magics/osm.py