Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
目录中python计数特定于大小的类型文件txt_Python_File_Io_Size - Fatal编程技术网

目录中python计数特定于大小的类型文件txt

目录中python计数特定于大小的类型文件txt,python,file,io,size,Python,File,Io,Size,在我的文件夹中,有两种类型的文件:html和txt。 我想知道txt文件的总大小 我找到了这个代码,但是我如何应用它来满足我的需要呢 import os from os.path import join, getsize size = 0 count = 0 for root, dirs, files in os.walk(path): size += sum(getsize(join(root, name)) for name in files) count += len(fi

在我的文件夹中,有两种类型的文件:
html
txt
。 我想知道
txt
文件的总大小

我找到了这个代码,但是我如何应用它来满足我的需要呢

import os
from os.path import join, getsize
size = 0
count = 0
for root, dirs, files in os.walk(path):
    size += sum(getsize(join(root, name)) for name in files)
    count += len(files)
print count, size

您可以通过将
if
添加到以下理解中来限定哪些文件:

for root, dirs, files in os.walk(path):
    size += sum(getsize(join(root, name)) for name in files if name.endswith('.txt'))
    count += sum(1 for name in files if name.endswith('.txt'))
print count, size

您可以通过将
if
添加到以下理解中来限定哪些文件:

for root, dirs, files in os.walk(path):
    size += sum(getsize(join(root, name)) for name in files if name.endswith('.txt'))
    count += sum(1 for name in files if name.endswith('.txt'))
print count, size
最好使用glob()而不是操作系统来查找文件。这使它更具可读性

import glob
import os

path = '/tmp'
files = glob.glob(path + "/**/*.txt")
total_size = 0
for file in files:
    total_size += os.path.getsize(os.path.join(path, file))
print len(files), total_size
最好使用glob()而不是操作系统来查找文件。这使它更具可读性

import glob
import os

path = '/tmp'
files = glob.glob(path + "/**/*.txt")
total_size = 0
for file in files:
    total_size += os.path.getsize(os.path.join(path, file))
print len(files), total_size

对于文件中的名称,如果名称位于“.txt”-请在末尾添加此项。但os path也有一个本机命令,我想不起来了。当我在电脑旁时,我可以看一看。).endswith是您需要的:)如果文件名在“.txt”中,请在结尾添加此项。但os path也有一个本机命令,我想不起来了。当我在电脑旁时,我可以看一看。)endswith是您需要的:)适用于大小,但您的第三行在“名称”上显示红线:未解析的引用名称。NameError:未定义全局名称“name”。我需要让name=''吗?好的,文件中的是1。我把uu换成了我的名字。然后就可以了,感谢您提供的大小,但是您的第三行在“名称”上显示了红线:未解析的引用名称。NameError:未定义全局名称“name”。我需要让name=''吗?好的,文件中的是1。我把uu换成了我的名字。那就行了,谢谢