<p>列表中包含的项是一个元组。你知道吗</p>
<p>如果打印结果[0],您将得到:</p>
<pre><code>('CREATE MULTISET TABLE DBADMIN_BKP.LIKP_BKP ,NO FALLBACK ,\r NO BEFORE JOURNAL,\r NO AFTER JOURNAL,\r CHECKSUM = DEFAULT,\r DEFAULT ME ... (12819 characters truncated) ... HARACTER SET UNICODE CASESPECIFIC NOT NULL,\r FSH_VAS_CG CHAR(3) CHARACTER SET UNICODE CASESPECIFIC NOT NULL, \rPRIMARY KEY ( MANDT ,VBELN ))\r;',)
</code></pre>
<p>现在你已经说过你已经把它变成了一个字符串,我假设你是通过str(results[I])实现的。这将产生:</p>
<pre><code>"('CREATE MULTISET TABLE DBADMIN_BKP.LIKP_BKP ,NO FALLBACK ,\\r NO BEFORE JOURNAL,\\r NO AFTER JOURNAL,\\r CHECKSUM = DEFAULT,\\r DEFAULT ME ... (12819 characters truncated) ... HARACTER SET UNICODE CASESPECIFIC NOT NULL,\\r FSH_VAS_CG CHAR(3) CHARACTER SET UNICODE CASESPECIFIC NOT NULL, \\rPRIMARY KEY ( MANDT ,VBELN ))\\r;',)"
</code></pre>
<p>当它被转换成一个字符串时,Python希望确保“\r”实际上会被打印出来,而不是转义序列“\r”的含义,转义序列是一个回车符。为了做到这一点,添加了另一个反斜杠,给出了转义序列“\\”,字面上表示单个“\”</p>
<pre><code>>>> print("\\r")
\r
>>> print("\r")
>>> print("\\")
\
>>> print("\")
File "<stdin>", line 1
print("\")
^
SyntaxError: EOL while scanning string literal
</code></pre>
<p>所以要删除这个“\\r”字符,您需要正确地识别它。你知道吗</p>