这些符号的含义没有区别。参考:
字符串和字节文字都可以选择以字母“ r”或“ R”为前缀;这样的字符串称为原始字符串,并将反斜杠视为文字字符
其他前缀也是如此。
现在关于VSCode行为:
{2}
当编辑器假定您正在编写正则表达式时,就会出现第一种颜色(带有黄色)- 第二个(带有蓝色
{2}
)发生在编辑器认为您正在编写格式字符串(如)时"{0}, {1}!".format("Hello", "world")
。
当我们添加更多语法时,这一点变得更加明显:
现在,看起来VSCode应该像对待R"literal"
一样r"literal"
,但是它用相同的颜色来着色"literal"
,这可能是一个很小的错误,没有人发现,因为每个人都写小写字母r
。
来自评论的更正:这不是错误,而是功能!VSCode的突出显示器巧妙地利用了
r和
R前缀相等的事实,并允许开发人员通过使用
r对正则表达式原始字符串和
R非正则表达式原始字符串使用的约定来正确着色。
原始字符串通常被解释为正则表达式。这有点问题,因为根据应用程序的不同,这实际上可能不是最常见的情况。(…)MagicPython遵循一个约定,
小写的r前缀表示正则表达式字符串,而大写的R前缀表示仅原始字符串,没有特殊的regexp语义。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)