概述
输入工程名计算一个工程项目中C++,Java,Python,GO语言的文件个数,并找出Python文件中最大文件的文件名
1、先读取文件地址,找到该文件夹
import os
import os.path
path = 'C:/python学习/Python作业/' + input("请输入项目名:")
2、给这四个文件类型个数赋初始值,并创建两个列表分别存入某文件类型的文件大小和文件名(分开存放用于更明白理解)
cppnum = 0
javanum = 0
pynum = 0
gonum = 0
list_size = []
list_name = []
3、计算这四种文件类型的个数(并将Python文件的名字和大小存入列表)
for parentdir, dirname, filenames in os.walk(path):
for filename in filenames:
if os.path.splitext(filename)[1] == '.cpp':
cppnum = cppnum + 1
if os.path.splitext(filename)[1] == '.java':
javanum = javanum + 1
if os.path.splitext(filename)[1] == '.py':
pynum = pynum + 1
filesize = os.path.getsize(os.path.join(parentdir,filename))
list_size.append(filesize)
list_name.append(filename)
if os.path.splitext(filename)[1] == '.go':
gonum = gonum + 1
4、转化存入的文件大小(自定义一个函数)
def getsizename(size):
if (size > 1024*1024*1024.0):
numstr = str(size/(1024*1024*1024.0))
sizename = numstr[:(numstr.index('.')+3)]+'GB'
elif (size > 1024*1024.0):
numstr = str(size/(1024*1024.0))
sizename = numstr[:(numstr.index('.')+3)]+'MB'
elif (size > 1024.0):
numstr = str(size/1024.0)
sizename = numstr[:(numstr.index('.')+3)]+'KB'
else:
sizename = str(size) +'Bytes'
return sizename
5、输出结果(输出最大文件名,可先找到最大文件在列表中的地址,使用该地址即可找到对应的文件名)
size = max(list_size)
s = getsizename(size)
name = list_name[list_size.index(max(list_size))]
print("C++文件有",cppnum,"个")
print("Java文件有",javanum,"个")
print("Python文件有",pynum,"个")
print("Go文件有",gonum,"个")
print("其中最大的文件大小是",s)
print("这个最大的文件名是",name)
最后
以上就是高贵发卡为你收集整理的Python计算一个目录下所有文件(包括子目录中所有文件)指定的文件类型个数的全部内容,希望文章能够帮你解决Python计算一个目录下所有文件(包括子目录中所有文件)指定的文件类型个数所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复