当我申请时,我只会感到困惑:
os.listdir("HW-3/data_sets/")
效果很好!并列出该目录下的所有文件名。但是,当我添加一个额外的斜杠。在我看来,应该没问题。
os.listdir("/HW-3/data_sets/")
但它显示错误消息:
OSError: [Errno 2] No such file or directory: '/HW-3/data_sets'
让我想一想这个程序是如此不稳定。即使用户输入'/HW-3/data_sets'
,我怎样才能让它运作良好?提前谢谢!
答案 0 :(得分:7)
路径中的前导斜杠表示绝对路径,或从文件系统的根开始的路径。没有前导斜杠使路径 relative 到您的工作目录(通常是从您启动脚本的任何地方)。
因此,初始斜杠导致路径在语义上与没有前导斜杠的路径不同,因此您不应期望脚本对这两个路径的行为方式相同。