首先,我阅读了有关此错误的所有问题。
我试图用Python编写一个简单的编程语言,其中的代码是从字符串数组中读取的。
但是,当我尝试将所有auto player1 = std::make_shared<Player>(argument1, ..smartpointer_to_player1..);
,"\"
替换为"n"
s,将所有"\n"
,"\"
,"\"
替换为{{1}时},"n"
s。
我的替换代码是:
"\"
我的第一个目标就是打印出来:
"n"
为了实现这一点,我必须给for w in code:
q=list(w)
w2=0
while ord(q[w2])!=0:
if q[w2]=='\\' and q[w2+1]=='n':
if q[w2-1]=='\\':
q.pop(w2-1)
else:
q[w2]='\n'
q.pop(w2+1)
w2+=1
w="".join(q)
作为输入,变量代码将是一个由1个字符串组成的列表。 hello\n
world
表示这是一个打印功能,在替换时将被完全丢弃。
但是当我提供输入时,我收到了这个错误:
"oshello\\\n\nworld"
为什么会这样?我认为这应该足以避免在尝试迭代数组并在迭代时减小其大小时发生的错误,因为当它看到NULL字符时会停止。