gpt4 book ai didi

python计数文件并显示最大值

转载 作者:太空宇宙 更新时间:2023-11-03 12:23:59 24 4
gpt4 key购买 nike

我想计算一个目录中的所有文件范围。然后计算它们并显示其中有多少。做这个的最好方法是什么?此脚本包含所有 pdf= 0 行代码,将会非常庞大​​。
另外,如何从高到低显示有多少文件的输出。

import os

pdf = 0
doc = 0
docx = 0
xls = 0
xlsx = 0
ppt = 0
pptx = 0

for file in os.listdir("C:\\Users\\joey\\Desktop\\school\\ICOMMH"):
if file.endswith(".pdf"):
pdf += 1
print(file)
if file.endswith(".doc"):
doc += 1
print(file)
if file.endswith(".docx"):
docx += 1
print(file)
if file.endswith(".xls"):
xls += 1
print(file)
if file.endswith(".xlsx"):
xlsx += 1
print(file)
if file.endswith(".ppt"):
ppt += 1
print(file)
if file.endswith(".pptx"):
pptx += 1
print(file)

print(pdf)
print(doc)
print(docx)

最佳答案

这是您使用 collections.defaultdict

的地方
from collections import defaultdict
import os.path

d = defaultdict(int)

for fname in os.listdir("C:\\Users\\joey\\Desktop\\school\\ICOMMH"):
_, ext = os.path.splitext(fname)
d[ext] += 1

然后你会得到一个看起来像这样的字典:

{'.pdf': 7,  # or however many...
'.doc': 3,
'.docx': 2, ...}

然后您可以通过执行以下操作来显示最常见的:

max(d, key=lambda k: d[k])

关于python计数文件并显示最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30607022/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com