793578477 发表于 2020-6-26 19:50:21

转义符\n和直接反斜杠\有什么区别呢?

小甲鱼之前的练习使用\n进行转义
>>>print(“i love fishc.com\n” *8)
print(“i love fishc.com\n” *8)
而在003课程中直接的反斜杠\也起到了转义作用
>>>str='C:\now'
>>> str='C:\now'

请问鱼油大哥二者有什么区别呢?

qiuyouzhi 发表于 2020-6-26 19:52:33

二者没有区别

Twilight6 发表于 2020-6-26 19:53:55

本帖最后由 Twilight6 于 2020-6-26 20:08 编辑



\ 本身就是转义字符呀,当你 \ 一个合法的转义字符,那么会有这个转义字符的效果

而如果你 \ 的后面是个不合法的转义字符,Python 会默认你是要在字符串打印 \ 这个字符

而你第的 \n 只要在一起,就表示有换行的效果了,就是因为 \n 是合法的转义字符,表示换行作用,所以就有换行作用哈

准确的说 ,假设你填的转义字符(比如:\q)是不存在的,所以 Python 默认会把你加上 一个 \ 来转义你字符串里的 \ 以来达到打印的效果


转义字符表:

https://xxx.ilovefishc.com/forum/202005/27/142600ndywvddv0yiddvvw.png


Python 是无法单独输出一个 \ 的,因为 \n 才算一个字符

txxcat 发表于 2020-6-26 21:38:22

你print一下第二个str变量就知道了,不过强烈建议你以后不要用内置函数名做变量名,用str1、str2都行,否则后果难测。

793578477 发表于 2020-6-26 22:35:04

qiuyouzhi 发表于 2020-6-26 19:52
二者没有区别

感谢鱼油大哥

793578477 发表于 2020-6-26 22:35:39

Twilight6 发表于 2020-6-26 19:53
\ 本身就是转义字符呀,当你 \ 一个合法的转义字符,那么会有这个转义字符的效果

而如果你 \ 的后 ...

感谢鱼油大哥

793578477 发表于 2020-6-26 22:36:11

txxcat 发表于 2020-6-26 21:38
你print一下第二个str变量就知道了,不过强烈建议你以后不要用内置函数名做变量名,用str1、str2都行,否则 ...

谢谢大哥提醒呀~~~

793578477 发表于 2020-6-26 22:51:19

Twilight6 发表于 2020-6-26 19:53
\ 本身就是转义字符呀,当你 \ 一个合法的转义字符,那么会有这个转义字符的效果

而如果你 \ 的后 ...

str='C:\now'
鱼油大哥我还是有些不理解呢,上边这个\内容应该不合法吧,那如果print(str)
print(str)
运行结果
C:
ow
应该python直接打印now才对呀
为什么之后也会换行呢
大哥对不起,小鱼有些不理解{:10_250:}

Twilight6 发表于 2020-6-26 22:54:49

793578477 发表于 2020-6-26 22:51
鱼油大哥我还是有些不理解呢,上边这个\内容应该不合法吧,那如果print(str)

运行结果


我 3 L 说的蛮清楚的咯 你没认真看哈:

而你的 \n 只要在一起,就表示有换行的效果了,就是因为 \n 是合法的转义字符,表示换行作用,所以就有换行作用哈

除非你加了原始字符,或者把 \ 转义了才没有效果
页: [1]
查看完整版本: 转义符\n和直接反斜杠\有什么区别呢?