exec中的换行符是否在Python中工作?

时间:2014-03-05 16:23:42

标签: python-2.7

我试图用最短的代码解决SIZECON问题。除了ASCII码≤32的符号外,核心等于我的程序源代码的大小。

exec'i=r();s+=i*(i>0);'*r()  # working fine
exec'i=r()\ns+=i*(i>0)\n'*r()  # working fine, but increase in 2 char

我认为 \ n 具有ASCII值< 32因此它不会被计算,而是被计为2个字符。

当我按下Enter代替 \ n 时,它会出错

SyntaxError: EOL while scanning string literal

我认为它会起作用,但它没有,为什么?

1 个答案:

答案 0 :(得分:0)

\n不是字符0xd,而是由两个字符(反斜杠和n)组成的字符串文字,解释器将转换为0xd换行符。由于换行符具有特殊行为,因此这是必要的。

我希望这些角色能够计算在内。