繁体   English   中英

第 9 章用 python 自动化无聊的东西

[英]Chapter 9 automate the boring stuff with python

一直在使用此隔离区来学习 Python 并在自己尝试此操作并在线查找信息后,我不知道我的代码有什么问题,因为即使编译后没有错误,它也没有返回任何内容,只是空白结果。 程序确实会在指定文件夹中查找超过 100Mb 的文件并返回这些文件的名称。

import os

folder = os.path.abspath(input('Please enter folder to search for files larger than 100MB:\n'))

def get_MB(value):
    MB = 1 * (10**6)
    my_MB = value * MB
    return my_MB

size_input = input('Enter your desired minimun MB: ')
my_min = get_MB(size_input)

for foldername, subfolders, filenames in os.walk(folder):
    for filename in filenames:
        file_path = os.path.join(os.path.abspath(foldername), filename)
        size = os.path.getsize(file_path)
        if size >= my_min:
            print(filename)

计算时将 size_input 转换为 int/float:

def get_MB(value):
    MB = 1 * (10**6)
    my_MB = int(value) * MB
    return my_MB

因为您的 get_mb function 将值 10**6 次作为非常长的字符串返回,而不是 int 类型的值。 因此typeError: '>=' not supported between instances of 'int' and 'str'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM