字符串无法粘贴到新的iPython 5.0中

字符串无法粘贴到新的iPython 5.0中,python,string,ipython,non-ascii-characters,Python,String,Ipython,Non Ascii Characters,在python 2.7控制台以及iPython 4中,我能够将此字符串粘贴到一个变量中,如下所示: In [2]: c = 'ÙjÌÉñõµ Ï“JÖq´ž#»&•¼²nËòQZ<_' 即使是%paste也会返回一个错误: ÙjÌÉñõµ ^ SyntaxError: invalid syntax iPython从4到5发生了什么变化,为什么会发生这种情况?与没有转义引号的字符串有关吗? Ipython5用一个新的prompt_工具包替换了默认的readli

在python 2.7控制台以及iPython 4中,我能够将此字符串粘贴到一个变量中,如下所示:

In [2]: c = 'ÙjÌÉñõµÏ“JÖq´ž#»&•¼²nËòQZ<_'
即使是
%paste
也会返回一个错误:

    ÙjÌÉñõµ
    ^
SyntaxError: invalid syntax
iPython从4到5发生了什么变化,为什么会发生这种情况?与没有转义引号的字符串有关吗?

Ipython5用一个新的prompt_工具包替换了默认的
readline

看起来您的字符串有几个字符,旧的读线忽略了这些字符,而新的读线看到了这些字符。第一个出现在
µ
之后。我在SO窗口中看不到它,但当将光标移动到线上时,我可以“感觉到”。在将行粘贴到编辑器中时,我也可以看到一些东西。但我对原始文本工具不够熟悉,无法了解更多

当我把你的字符串粘贴到一个普通的Python shell中时,我得到了一个铃声,屏幕就清晰了。因此,即使是常规的
readline
也会遇到这个字符串的问题

我添加了“|”是否存在无法打印的字符

c = 'ÙjÌÉñõµ|Ï“JÖq´ž#|»&•¼|²nËòQZ<_'

c='jÌÌõµ|Ï“将
^L
更改为
^L
会使它接受它,但
c
中缺少该序列。就好像新的
读线
代码将
^L
解释为控制字符一样。它不应该这样。这个字符串的来源是什么?有多少个字符?假设是什么d代表?32个字符。它是给定明文和密钥上DES加密的密文和iv。如果我
ctrl v
在一个普通的
python2.7
会话上的字符串,并询问
len(c)
我得到46。如果我向其中添加
u
(unicode),我得到27。
c = 'ÙjÌÉñõµ|Ï“JÖq´ž#|»&•¼|²nËòQZ<_'