gslytherinap 发表于 2023-6-22 23:50:33

【求助各位大佬

想问问这个
a='''abc
123'''
len(a)
这个结果出来为什么是7啊这究竟是怎么算的,
还有下面这个
len("A\101\x41")
这个为啥是3啊
然后对比这个
a="abc\
123"
len(a)
这个就是6……
真的搞晕了求大佬们赐教

isdkz 发表于 2023-6-22 23:54:12

这几个问题都涉及到Python的字符串处理。我会分别解释一下:

1. 对于这个问题:
        a = '''abc
    123'''
    len(a)
   
    在Python中,三引号包含的字符串允许包含换行,换行符也会被计算进字符串长度。因此字符串 a 实际上是包含了一个换行符,字符串内容实际上是'abc\n123' 。所以长度为7。

2. 对于这个问题:
        len("A\101\x41")
   
    在Python字符串中, \101 是八进制的表示方式,表示ASCII码为65的字符,也就是字符"A"; \x41 是十六进制的表示方式,也代表字符"A"。所以这个字符串实际上是 "AAA",长度为3。

3. 对于这个问题:
        a = "abc\
    123"
    len(a)
   
    在Python字符串中,如果你想让一个字符串跨越多行,但不包含换行符,可以在行末使用反斜杠 ( \ )。这实际上告诉Python忽略接下来的换行符。所以这个字符串实际上是 "abc123",长度为6。

希望这能解答你的问题,如果还有其他问题欢迎继续提问。

gslytherinap 发表于 2023-6-22 23:55:35

我懂了!!!谢谢大佬!!!!
页: [1]
查看完整版本: 【求助各位大佬