GitHub - 文本文件中的 Markdown 语言 - 行数

GitHub - Markdown language in text file - Amount of Lines

这是我在 Whosebug 上的第一个 post。我最近参加了 Coursera 上的数据科学课程。作为 Coursera 的一名学生,我不得不批改一些作业,其中包括一个关于 markdown 的问题。作业要求每个人创建一个文本文件,可以在 GitHub 上的 repo 中查看该文件。该文件必须格式化为二级标题 (##),其中包含以下内容 'This is a markdown file'。在大多数人的文件中,以下内容显示为“2 行,27 个字节”。

然而,在 2 个作业中,我看到了以下内容:“1 行,n 个字节”(n 是各种字节)。我知道字节数发生了变化,因为不是每个人都输入了 'This is a markdown file' - 有人省略了 'a' 等。但是为什么行数要改变呢?我检查了原始数据文件,它们都包含相同的内容。我是数据科学领域的新手(旧学校统计背景),所以如果这是一个简单的答案,那么很抱歉提出这个问题。

这几乎肯定与行尾有关。

大多数人可能都在第一行末尾添加了一行。因此该文件包含第二个空行。一些用户没有添加行尾(使用 [enter][return] 键)。因此,他们的文件包含一行。

通常,在纯文本文件的最后一行末尾包含一个行被认为是好的形式。事实上,许多文本编辑器会自动为您添加一行,这可能是大多数文件包含两行的原因。也就是说,任何体面的 Markdown 解析器都应该能够正确解析缺少最后一行结尾的行的 Markdown 文件。

至于文件大小的差异(在没有错别字的情况下),这也可能是由于换行造成的。在Windows (DOS) 上,系统默认使用两个(隐藏的)字符来表示行尾(通常表示为\r\n)。而所有其他系统(Mac OS、Linux、Unix 等)仅使用单个字符 (\n)。同样,任何像样的 Markdown 解析器都应该能够处理其中任何一个。但是,每个都提供不同的字符数,因此文件大小也不同。