鱼C论坛

 找回密码
 立即注册
查看: 1771|回复: 10

[已解决]第030讲课后01题

[复制链接]
发表于 2020-12-6 23:27:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 1Z啊 于 2020-12-6 23:38 编辑

def sizelist(file_name):
    import os
    list1 = os.listdir(file_name)
    for each in list1:
        x = os.path.getsize(each)
        print(each, '【', x, 'Bytes】')


sizelist('D:/python文件/文本')


为什么有些搜索文件夹会出现  FileNotFoundError: [WinError 2] 系统找不到指定的文件。: 'a.txt'
而有些却完美运行了呢?
最佳答案
2020-12-7 16:25:39
1Z啊 发表于 2020-12-7 16:24
改成这样就好了
list1里的只是文件名,而getsize要输入的是路径
def sizelist(folder_name):

额,还是文档好使吧哈哈哈

解决了记得设置最佳答案哈
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-12-7 00:28:01 | 显示全部楼层

回帖奖励 +2 鱼币

在for循环下第一行加上
if os.path.isfile(each):
的判断再试试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-7 15:58:36 | 显示全部楼层
昨非 发表于 2020-12-7 00:28
在for循环下第一行加上

的判断再试试


为什么报错的文件夹的文件路径会不正确呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-12-7 16:09:36 | 显示全部楼层
1Z啊 发表于 2020-12-7 15:58
为什么报错的文件夹的文件路径会不正确呢

os.path.getsize(path)        返回文件大小,如果文件不存在就返回错误

os.path.isfile(path)        判断路径是否为文件 如果不是文件的话,getsize会报错的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-12-7 16:11:24 | 显示全部楼层
这部分我也不太熟悉,每次有用到都要查
https://fishc.com.cn/forum.php?m ... peid%26typeid%3D403
总之还是参考答案和文档比较好
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-7 16:18:16 | 显示全部楼层
昨非 发表于 2020-12-7 16:11
这部分我也不太熟悉,每次有用到都要查
https://fishc.com.cn/forum.php?mod=viewthread&tid=45512&extra= ...

我好想明白了,我先试试哈
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-12-7 16:18:54 | 显示全部楼层
1Z啊 发表于 2020-12-7 16:18
我好想明白了,我先试试哈

好,解决了过来说一声哈
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-7 16:20:57 | 显示全部楼层
昨非 发表于 2020-12-7 16:11
这部分我也不太熟悉,每次有用到都要查
https://fishc.com.cn/forum.php?mod=viewthread&tid=45512&extra= ...

哦,我明白了,是我自己的疏忽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-7 16:24:36 | 显示全部楼层
1Z啊 发表于 2020-12-7 16:20
哦,我明白了,是我自己的疏忽

改成这样就好了
list1里的只是文件名,而getsize要输入的是路径
def sizelist(folder_name):
    import os
    list1 = os.listdir(folder_name)
    for each in list1:
        y = str(folder_name + '/'+ each)
        x = os.path.getsize(y)
        print(each, '【', x, 'Bytes】')


sizelist('D:/python文件/文本')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-7 16:25:13 | 显示全部楼层
改成这样就好了
list1里的只是文件名,而getsize要输入的是路径
def sizelist(folder_name):
    import os
    list1 = os.listdir(folder_name)
    for each in list1:
        y = str(folder_name + '/'+ each)
        x = os.path.getsize(y)
        print(each, '【', x, 'Bytes】')


sizelist('D:/python文件/文本')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-12-7 16:25:39 | 显示全部楼层    本楼为最佳答案   
1Z啊 发表于 2020-12-7 16:24
改成这样就好了
list1里的只是文件名,而getsize要输入的是路径
def sizelist(folder_name):

额,还是文档好使吧哈哈哈

解决了记得设置最佳答案哈
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-10 17:07

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表