在 python 字典中使用单引号和双引号有什么区别(如果有的话)?

use*_*486 6 python dictionary python-3.x

我使用双引号声明了一个像这样的python字典;

{
    "Name":"John",
    "Date":"2/18/1998",
    "Profit":25.12
}
Run Code Online (Sandbox Code Playgroud)

同样的python字典可以用单引号写成这样;

{
    'Name':'John',
    'Date':'2/18/1998',
    'Profit':25.12
}
Run Code Online (Sandbox Code Playgroud)

如果有的话,两者之间有什么区别?python的最佳实践是什么?实际上,到目前为止,我没有遇到任何区别。我不确定我是否遗漏了什么。

U10*_*ard 5

不同之处在于,当你有一个像这样的字符串时:

''a''
Run Code Online (Sandbox Code Playgroud)

它将引发语法错误,因为它包含两个并排的引号

所以你需要做双引号,例如:

"'a'"
Run Code Online (Sandbox Code Playgroud)

同样的事情做相反的事情:

""a""
Run Code Online (Sandbox Code Playgroud)

会抛出错误。

'"a"'
Run Code Online (Sandbox Code Playgroud)

不会抛出错误

(在堆栈溢出时,显示的代码已经看起来不正确)


use*_*467 5

没有区别;'并且"可以互换使用。除非您的字符串中有引号(在这种情况下,您必须用相反的引号将字符串括起来),否则没有内在的理由偏爱一个而不是另一个。

除此之外,这只是个人喜好。如果您来自 Java 背景,那么您可能更喜欢字符串的双引号和“字符”的单引号(它们实际上只是一个字母字符串)。但在一天结束时,它是一样的。