JupyterLab中多行字符串内的>>>为何消失?
Jupyter多行字符串丢失行首
>>>的解决方案 问题说明
在Jupyter单元格中定义多行字符串时,行首的>>>会被自动剥离:
a = ''' >>> test1 >>> test2 '''
运行后a的值为'\ntest1\ntest2\n',但标准Python和单独运行IPython时无此问题。仅当行首为三个>时触发该问题,两个/四个>或>>>不在行首时均正常。
可行解决方案
转义
>字符:在每个行首的>前添加反斜杠,避免Jupyter将其识别为IPython提示符:a = ''' \>\>\> test1 \>\>\> test2 '''运行后
a的内容会完整保留>>> test1和>>> test2。添加空格后处理:先在
>>>前加一个空格(规避识别逻辑),再通过字符串操作去除多余空格:a = ''' >>> test1 >>> test2 '''.strip().replace('\n ', '\n')最终
a的值为'>>> test1\n>>> test2'。字符串拼接:将每行单独定义后拼接,绕过Jupyter的行首提示符识别:
a = '\n' + '>>> test1\n' + '>>> test2\n'
内容的提问来源于stack exchange,提问作者Neil
相关产品推荐
相关产品推荐

