字符长度
>>>str=("a\b\c")>>>len(str)
4
问题:为什么等于四不等于3,\b和\c不是分别表示一个字符长度吗? 你print一下str就知道了
>>> str=("a\b\c")
>>> len(str)
4
>>> print(str)
a\c \c表示两个字符长度。
>>> len('\c')
2 wuqramy 发表于 2020-4-27 09:08
你print一下str就知道了
看一眼你第 5 行是个啥 '\c'不是一个转义字符,是两个字符组成的:'\'和'c' >>> print("a\b\c")
a\c
>>> #从这里看出来,print 之后长度为 4
>>> len("a\b\c")
4 本帖最后由 heidern0612 于 2020-4-27 09:21 编辑
因为\a和\b都是关键字,都算一个,\C不算关键字,算俩字符。所以一共是四个字符。
所以才有下面\a\b\c打印的结果只有/c。
另外,不要命名重新命名str内置函数。 本帖最后由 sunrise085 于 2020-4-27 09:25 编辑
并不是所有的字符前加反斜杠都会被转义的。所有能转义的都是有规定的。
如:\b转义为退格,\n转义为回车换行,\t转义为Tab, 等等
你要把\c转义?没这个规定啊
所以\c是两个字符'\'和'c'
因此,"a\b\c"是四个字符 heidern0612 发表于 2020-4-27 09:19
因为\a和\b都是关键字,都算一个,\C不算关键字,算俩字符。所以一共是四个字符。
所以才有下面\a\b\c打 ...
那是a\b\c啊 heidern0612 发表于 2020-4-27 09:19
因为\a和\b都是关键字,都算一个,\C不算关键字,算俩字符。所以一共是四个字符。
所以才有下面\a\b\c打 ...
他没用 \a 。 wuqramy 发表于 2020-4-27 09:22
那是a\b\c啊
噢,\a和a都是一个字符。
页:
[1]