繁体   English   中英

使用Python转义Mac OSX中的正斜杠路径目录?

[英]Escaping a forward slash path directory in Mac OSX using Python?

这是我的第二篇文章,如果我做错了什么,我道歉 - 我会尽量简明扼要。

我做了一些搜索,大多数转义必须处理嵌入的JSON字符串 - 我的问题实际上是打开文件本身。

目前,我正在努力使我的代码尽可能通用,所以我正在使用:

file = open(os.path.expanduser(r'~/Desktop/Austin/Tweets/10_7_2012_12/09-Tweets.txt'), 'r')

问题是,当解释器看到这个代码时,它会在文件名中看到“/”,我认为它正试图沿着另一个目录运行。 我通过删除文件名中的“/”并输入以下内容来确认:

file = open(os.path.expanduser(r'~/Desktop/Austin/Tweets/10_7_2012_1209-Tweets.txt'), 'r')

它装得很好。

对所有这些文件执行此操作的问题在于,我有几百个包含数千条推文的文件,这有点不切实际。

所以我的问题是:有没有办法在文件名中加载带正斜杠的文件?

我看到很多方法用搜索按钮加载文件,但没有包括如何处理名称中的正斜杠...我试过:

file = open(os.path.expanduser('~/Desktop/Austin/Tweets/10_7_2012_12\/09-Tweets.txt'), 'r')

file = open(os.path.expanduser('~/Desktop/Austin/Tweets/10_7_2012_12//09-Tweets.txt'), 'r')

一切都无济于事。

关于Python如何处理正斜杠的解释将受到欢迎,如果有人关心教一个天真的本科生。

我在Leopard上使用Mac OSX。 我正在运行一个与Twitter Streaming API通信的网络爬虫; 名称中的斜杠是使用“/”保存它们以指定日期的结果。

解决方案:您可以在Mac OSX上的文件名中使用正斜杠。 从文件系统的角度来看,/实际上是一个冒号,它被转换为/在Finder中。

Kindall的解释如下:碳层是必要的,它使用标准的Mac文件名分隔符,冒号。 从历史上看,Mac文件名中的斜线可以追溯到1984年.Mac用户也希望在GUI中看到冒号而不是斜线作为路径名分隔符(或者至少在2001年,当这种行为被建立时)。

我假设您使用的是类Unix操作系统,我的理解是这种系统中的文件名中不允许使用正斜杠。 你看到了什么,如果你ls~/Desktop/Austin/Tweets/

就个人而言,我宁愿在这些文件上运行批量重命名工具。 文件名中的斜杠通常是个坏主意。

否则,答案是r'~/Desktop/Austin/Tweets/10_7_2012_12:09-Tweets.txt' 比照 OSX文件名中的特殊字符? (Python os.rename)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM