为什么使用'\\n'而不是'\n'?

Why use '\\n' rather than '\n'?

我在关于如何下载文件的 Python 3 教程中看到了这个,这就是它的样子。

from urllib import request
import requests


goog="http://realchart.finance.yahoo.com/table.csvs=GOOG&d=8&e=7&f=2016&g=d&a=7&b=19&c=2004&ignore=.csv"
rp=request.urlopen(goog)
s=rp.read()

cp=str(s)
m=cp.split('\n')
dest='goog.csv'
fw=open(dest,'w')
    for c in m:
      fw.write(c+ '\n')

fw.close()
fr=open('goog.csv','r')
k=fr.read()
print(k)

为什么要用这个?

split('\n')

确实只有当您使用双反斜杠时代码才能正常工作,但为什么呢?

<button onclick='window.alert("\n")'>alert not escaped</button>
<button onclick='window.alert("\n")'>alert escaped</button>

在字符串中,单个反斜杠就是所谓的 'escape' 字符。这用于包含特殊字符,如制表符 (\t) 或换行符 (\n)。

反斜杠是字符串中的特殊字符,其目的是将特殊字符引入字符串中,这些特殊字符不能以自然方式在键盘上书写,如果有的话。最常见的是换行符 '\n'.

但是,由于反斜线是特殊的,如何使字符串包含真正的反斜线呢?很简单:使用反斜杠来逃避自身!双反斜杠将被翻译成文字反斜杠。

在这个问题的上下文中,正在搜索的文本包含一个文字反斜杠,因此要找到这个文字反斜杠,必须使用双反斜杠。