在 Julia 中,单引号和双引号有什么区别?
与 Python 不同的是,Julia 不允许使用单引号表示字符串:
> s = 'abc'
syntax: invalid character literal
> s = "abc"
> print(s)
abc
但是在尝试单引号引用双引号时,这是允许的:
> s = '"'
> print(s)
"
在Julia中,单引号的用途是什么?是否有类似Python PEP的文档来解释为什么不使用单引号?
在 Julia 中,单引号和双引号有什么区别?
与 Python 不同的是,Julia 不允许使用单引号表示字符串:
> s = 'abc'
syntax: invalid character literal
> s = "abc"
> print(s)
abc
但是在尝试单引号引用双引号时,这是允许的:
> s = '"'
> print(s)
"
在Julia中,单引号的用途是什么?是否有类似Python PEP的文档来解释为什么不使用单引号?
就像在C/C++中一样,单引号表示字符,而双引号则表示字符串(请参见,例如,此处)。
julia> c = 'a'
'a'
julia> typeof(c)
Char
julia> s = "a"
"a"
julia> typeof(s)
String
julia> s = "ab"
"ab"
julia> typeof(s)
String
在Python中,我们只需使用长度为1的字符串作为字符,但是Julia区分它们,因此我们得到: 在Python中,我们只需将长度为1的字符串作为字符使用,但Julia对它们进行了区分,因此我们得到:
julia> typeof("abc"[1:1])
String
julia> typeof("abc"[1])
Char
尽管在Python中我们有
>>> type("abc"[0:1])
<type 'str'>
>>> type("abc"[0])
<type 'str'>