PyCharm在运行时将c中的字符串转换为'u' this is not normal'。看看如何在不转义第二个'的情况下,在u之后关闭字符串。
PyCharm通过在'前面添加一个斜杠自动为您转义它。字符串现在是'u\' this is not normal'。此时,一切都应该很好,但PyCharm可能为了安全起见采取了额外的步骤。 1.然后PyCharm转义它刚刚添加到字符串中的斜杠,使字符串保留为:'u\\' this is not normal' . 这可能是PyCharm内部的一个设置。它是否会导致代码出现实际问题?
1条答案
按热度按时间bnlyeluc1#
我认为发生的是
c
变量字符串中的'
需要转义,PyCharm在运行时知道这一点,因为您已经将整个字符串括在"
中(在调试器中您会注意到,您的c
字符串现在被'
包围了)。为了转义单引号,它将其更改为\'
,但是现在,字符串中有一个\
需要转义,在Python中要转义\
,可以输入\\
。EDIT让我看看我是否能解释这里发生的转义顺序。
1.将
"u' this is not normal"
指定给c
c
中的字符串转换为'u' this is not normal'
。看看如何在不转义第二个'
的情况下,在u
之后关闭字符串。'
前面添加一个斜杠自动为您转义它。字符串现在是'u\' this is not normal'
。此时,一切都应该很好,但PyCharm可能为了安全起见采取了额外的步骤。1.然后PyCharm转义它刚刚添加到字符串中的斜杠,使字符串保留为:
'u\\' this is not normal'
.这可能是PyCharm内部的一个设置。它是否会导致代码出现实际问题?