相关疑难解决方法(0)

如何列出目录的所有文件?

如何在Python中列出目录的所有文件并将其添加到list

python directory

3474
推荐指数
17
解决办法
375万
查看次数

更快到os.walk还是glob?

我在大型硬盘上乱码python中的文件查找.我一直在看os.walk和glob.我经常使用os.walk,因为我发现它更整洁,似乎更快(对于通常的大小目录).

有没有人对他们有任何经验,可以说哪个更有效率?正如我所说,glob似乎更慢,但你可以使用通配符等,就像walk一样,你必须过滤结果.以下是查找核心转储的示例.

core = re.compile(r"core\.\d*")
for root, dirs, files in os.walk("/path/to/dir/")
    for file in files:
        if core.search(file):
            path = os.path.join(root,file)
            print "Deleting: " + path
            os.remove(path)
Run Code Online (Sandbox Code Playgroud)

要么

for file in iglob("/path/to/dir/core.*")
    print "Deleting: " + file
    os.remove(file)
Run Code Online (Sandbox Code Playgroud)

python glob traversal os.walk directory-walk

29
推荐指数
2
解决办法
2万
查看次数

Python - 从子目录中找不到目录文件中的文件(在那里)

我确信它只是语法 - 我无法弄清楚为什么我的代码:

import os
from collections import Counter
d = {}
for filename in os.listdir('testfilefolder'):
    f = open(filename,'r')
    d = (f.read()).lower()
    freqs = Counter(d)
    print(freqs)
Run Code Online (Sandbox Code Playgroud)

将无法正常工作 - 它显然可以看到'testfilefolder'文件夹并告诉我该文件存在,即找不到错误消息'file2.txt'.所以它可以找到告诉我它没有找到...

然而,我得到这段代码:

from collections import Counter
d = {}
f = open("testfilefolder/file2.txt",'r')
d = (f.read()).lower()
freqs = Counter(d)
print(freqs)
Run Code Online (Sandbox Code Playgroud)

奖金 - 这是做我想做的事情的好方法(从文件中读取并计算单词的频率)?这是我使用Python的第一天(虽然我有一些编程exp.)

我不得不说我喜欢Python!

谢谢,

布赖恩

python file-processing

3
推荐指数
1
解决办法
5427
查看次数