我在研究quines时遇到了这个问题。我很想知道 %% 在下面做了什么
print '%r k%%k'%'a'
我知道 %r 采用传递的参数的字符串表示形式(在本例中为“a”)并将其添加到带引号的字符串中,因此在本例中它打印“a”k%k。我不知道 k%%k 做了什么?如果我删除其中一个 % 符号,我会收到错误消息。如果我两者都没有 %r,我也会收到错误消息。但是,当我在 ks(或任何字母表)之间同时有 %r 和两个 % 符号时,它会打印出几乎相同的内容,但缺少一个 %(在这种情况下,k%k 表示 k%%k)。这里发生了什么?