设为首页 收藏本站
开启辅助访问 快捷导航
菜单
猿人部落 主页 资讯 查看内容

第030讲:文件系统 ,课后作业

2019-7-21 13:50 发布者: admin 评论 3 查看 1068
0、编写一个步调,统计当前目次下每个文件范例的文件数———————————————————————————————————————————————————————————————import osx=input("请输
0、编写一个步调,统计当前目次下每个文件范例的文件数

———————————————————————————————————————————————————————————————

import os
x=input("请输入文件夹路径:")
print ("输出文件夹路径:",x)

os.chdir(x)
print ("枚举当前目次下的文件名:",os.listdir(path='.'))

a=os.listdir(os.curdir)#相称于os.listdir(path='.'),表现当前文件夹下的全部文件,如许写更精确
print ("再次枚举当前目次下的文件名:",a)
b=dict()#界说一个空字典,用来添补,各范例文件的数目

for e in a:#a是一个数组,界说 e 是 a 中的数值
    if os.path.isdir(e):
        # os.path.isdir 用来判定 e 是否是文件夹,os.path.isfile() 用来判定 e 是否是文件
        b.setdefault('文件夹', 0)#界说b的默认值,假如键不存在,则添加此键。跟get 雷同
        b['文件夹'] += 1#文件夹键值加1
    else:#否则,e不是文件夹,而是文件的时间
        f = os.path.splitext(e)[1]
        #os.path.splitext 分离文件的文件名和扩展名,并将其生存在一个元组中,针对单个文件
        #f即是这个元组中的第二个元素,就是f 是扩展名
        b.setdefault(f,0)#重新界说一个新的默认值,假如没有就创建一个;假如有,就直接将其设为默认值即可
        b[f]+=1#每过一个文件,都必要重新指定一下默认值,然后将默认值加1
        print ("打印一下每一个文件分离后的样子,每一个文件都是一个元组:")
        print (os.path.splitext(e))

print ("打印一下文件夹中全部文件范例的数目:",b)#可以看到,b是一个字典
for c in b.keys():#c是b的键值
    print("该文件夹下共有范例为 【%s】 的文件 【%d】 个" % (c,b[c]))
    #注意这种写法,%s %d , 后边的 % (c,b[c]) ,%前边没有逗号,后边的数据都有小括号

———————————————————————————————————————————————————————————————
输出效果:

请输入文件夹路径:D:\python\s
输出文件夹路径: D:\python\s
枚举当前目次下的文件名: ['01动动手.docx', 'a.txt', 'b.txt', '新建文件夹']
再次枚举当前目次下的文件名: ['01动动手.docx', 'a.txt', 'b.txt', '新建文件夹']
打印一下每一个文件分离后的样子,每一个文件都是一个元组:
('01动动手', '.docx')
打印一下每一个文件分离后的样子,每一个文件都是一个元组:
('a', '.txt')
打印一下每一个文件分离后的样子,每一个文件都是一个元组:
('b', '.txt')
打印一下文件夹中全部文件范例的数目: {'.docx': 1, '.txt': 2, '文件夹': 1}
该文件夹下共有范例为 【.docx】 的文件 【1】 个
该文件夹下共有范例为 【.txt】 的文件 【2】 个
该文件夹下共有范例为 【文件夹】 的文件 【1】 个

路过

雷人

握手

鲜花

鸡蛋
收藏 邀请
上一篇:python仿之前很火的抖音表白小软件下一篇:《零基础入门学习Python》第四到八讲笔记

相关阅读

一周热门

头条攻略!

日排行榜

相关分类