【问题标题】:Why R uses forward slash (/) and not backslash (\) in file paths为什么 R 在文件路径中使用正斜杠 (/) 而不是反斜杠 (\)
【发布时间】:2020-11-12 15:28:58
【问题描述】:

我在教一个在线课程,一个学生问我为什么 R 在使用 read.csv 和其他相关函数时只在文件路径中使用 / 而不是 \。我尝试查看documentation,但它并没有真正提及它。从来没想过,因为我使用的是 Mac,Mac 中的默认值为 \,但在 Windows 机器中则不然。

我没有接受过计算机科学方面的培训,所以我有点难以回答我害怕的问题。学生们总是问最糟糕的事情!

【问题讨论】:

标签: r directory path read.table write.table


【解决方案1】:

有趣的问题。

首先,“正斜杠”/ 实际上更常见,因为它在 Unix、Linux 和 macOS 中使用。

其次,“反斜杠”\ 实际上有点痛苦,因为它也是一个转义字符。所以当你想要一个时,你需要在字符串中输入两个:"C:\\TEMP"

第三,Windows 上的 R 知道这一点并提供帮助!因此,您可以在使用反斜杠的任何地方使用正斜杠:"C:/TEMP" 工作方式相同!

第四,您可以让 R 为您计算路径,它将使用分隔符:file.path("some", "dir")

所以简短的回答是:R 在 Windows 上同时使用两者,让您选择您觉得更容易的任何一个。但请记住使用两个反斜杠(除非您在原始字符串上使用非常新的 R 4.0.0 功能,我现在将跳过)。

【讨论】:

  • 我认为这实际上是我对原始字符串的主要用例。我经常从 Windows 资源管理器中复制路径,并将它们包装在 r"(...)" 中比我迄今为止所做的要容易得多。
  • 谢谢!那么什么是转义字符?
  • 参见例如我在上面发布的第二个链接。
  • 感谢您添加链接,@Henrik。是的,原始字符串很棒。小价格是对 R >= 4.0.0 的依赖。旧的 R 3.* 安装仍然很多。本地工作没有问题。
猜你喜欢
  • 2014-04-12
  • 1970-01-01
  • 2019-01-28
  • 2013-07-23
  • 2017-03-16
  • 2021-07-13
  • 2014-02-04
  • 2016-03-12
  • 2016-11-20
相关资源
最近更新 更多