将字符串作为变量粘贴到IPython中,而不是作为可执行代码片段

Mic*_*ael 18 python copy-paste ipython magic-methods

我知道神奇的IPython %paste命令,如果你有有效的代码插入,这是非常有用的.现在我不想插入代码,我只想将复制缓冲区中的一些字符串存储为变量.有没有更简单的方法,除了将字符串复制到一些单独的文本编辑器并首先修改它?

像这样的东西会很好,但它们都不起作用:

strvar = %paste
strvar = """%paste"""
Run Code Online (Sandbox Code Playgroud)

PS字符串很长,包含特殊的字符等.所以简单的ctrl-c只会创建垃圾和错误消息.

Dan*_*kov 28

%paste strvar
Run Code Online (Sandbox Code Playgroud)

为您提供复制文本中的行列表.你可以做

strvar = '\n'.join(strvar)
Run Code Online (Sandbox Code Playgroud)

获取单个字符串中的文本.

  • 它实际上是一个特殊的列表子类 - 你可以使用`strvar.n`来获取换行符连接的文本.同样`strvar.s`用于空格分隔. (10认同)