我使用os.listdir()从一个目录中获取所有文件,并将它们转储到一个txt文件中。我将使用txt文件导入access以生成超链接。我遇到的问题是如何找到正确的路径。因此,当脚本运行时,它使用您所在的任何目录。下面是一个例子。现在它只工作了一半,它创建了links.txt,但是在文本文件中没有任何东西。
myDirectory = os.listdir("links")
f.open("links.txt", "w")
f.writelines([os.getcwd %s % (f) for f in myDirectory])发布于 2009-11-20 00:02:09
你的这句话:
f.writelines([os.getcwd %s % (f) for f in myDirectory])无效的Python语法,并且很难猜测您对它的想法--例如,当myDirectory列出当前目录时,您为什么要关心当前目录,而不是当前目录中的文件,而是子目录"links“中的文件?
尝试读懂您的想法总是一项困难且通常没有回报的练习,但是假设您确实打算使用当前目录,那么您可能希望
f.writelines(os.path.join(os.getcwd(), f) for f in myDirectory)发布于 2009-11-20 00:01:51
调用os.getcwd()时必须使用尾随的括号。
不过,您在这里实际需要的可能是os.path.join()
发布于 2009-11-20 00:02:43
os.getcwd是一个你需要调用的函数...另外,我不确定你在用字符串换码%做什么--但它们只在字符串中起作用...我猜你想要这样的东西:
f.writelines([os.path.join(os.getcwd(),f) for f in myDirectory])编辑:亚历克斯·马尔泰利更好的答案中的os.path.join
https://stackoverflow.com/questions/1764322
复制相似问题