python27是什么文件夹可以删除吗_python 删除系统中的文件(按时间,大小,扩展名)...

按时间删除文件

# importing the required modules

import os

import shutil

import time

# main function

def main():

# initializing the count

deleted_folders_count = 0

deleted_files_count = 0

# specify the path

path = "/PATH_TO_DELETE"

# specify the days

days = 30

# converting days to seconds

# time.time() returns current time in seconds

seconds = time.time() - (days * 24 * 60 * 60)

# checking whether the file is present in path or not

if os.path.exists(path):

# iterating over each and every folder and file in the path

for root_folder, folders, files in os.walk(path):

# comparing the days

if seconds >= get_file_or_folder_age(root_folder):

# removing the folder

remove_folder(root_folder)

deleted_folders_count += 1 # incrementing count

# breaking after removing the root_folder

break

else:

# checking folder from the root_folder

for folder in folders:

# folder path

folder_path = os.path.join(root_folder, folder)

# comparing with the days

if seconds >= get_file_or_folder_age(folder_path):

# invoking the remove_folder function

remove_folder(folder_path)

deleted_folders_count += 1 # incrementing count

# checking the current directory files

for file in files:

# file path

file_path = os.path.join(root_folder, file)

# comparing the days

if seconds >= get_file_or_folder_age(file_path):

# invoking the remove_file function

remove_file(file_path)

deleted_files_count += 1 # incrementing count

else:

# if the path is not a directory

# comparing with the days

if seconds >= get_file_or_folder_age(path):

# invoking the file

remove_file(path)

deleted_files_count += 1 # incrementing count

else:

# file/folder is not found

print(f'"{path}" is not found')

deleted_files_count += 1 # incrementing count

print(f"Total folders deleted: {deleted_folders_count}")

print(f"Total files deleted: {deleted_files_count}")

def remove_folder(path):

# removing the folder

if not shutil.rmtree(path):

# success message

print(f"{path} is removed successfully")

else:

# failure message

print(f"Unable to delete the {path}")

def remove_file(path):

# removing the file

if not os.remove(path):

# success message

print(f"{path} is removed successfully")

else:

# failure message

print(f"Unable to delete the {path}")

def get_file_or_folder_age(path):

# getting ctime of the file/folder

# time will be in seconds

ctime = os.stat(path).st_ctime

# returning the time

return ctime

if __name__ == '__main__':

main()

需要在上面的代码中调整以下两个变量

days = 30

path = "/PATH_TO_DELETE"

按大小删除文件

# importing the os module

import os

# function that returns size of a file

def get_file_size(path):

# getting file size in bytes

size = os.path.getsize(path)

# returning the size of the file

return size

# function to delete a file

def remove_file(path):

# deleting the file

if not os.remove(path):

# success

print(f"{path} is deleted successfully")

else:

# error

print(f"Unable to delete the {path}")

def main():

# specify the path

path = "ENTER_PATH_HERE"

# put max size of file in MBs

size = 500

# checking whether the path exists or not

if os.path.exists(path):

# converting size to bytes

size = size * 1024 * 1024

# traversing through the subfolders

for root_folder, folders, files in os.walk(path):

# iterating over the files list

for file in files:

# getting file path

file_path = os.path.join(root_folder, file)

# checking the file size

if get_file_size(file_path) >= size:

# invoking the remove_file function

remove_file(file_path)

else:

# checking only if the path is file

if os.path.isfile(path):

# path is not a dir

# checking the file directly

if get_file_size(path) >= size:

# invoking the remove_file function

remove_file(path)

else:

# path doesn't exist

print(f"{path} doesn't exist")

if __name__ == '__main__':

main()

调整以下两个变量。

path = "ENTER_PATH_HERE"

size = 500

按扩展名删除文件

在某些情况下,您想按文件的扩展名类型删除文件。假设.log文件。我们可以使用该os.path.splitext(path)方法找到文件的扩展名。它返回一个元组,其中包含文件的路径和扩展名。

# importing os module

import os

# main function

def main():

# specify the path

path = "PATH_TO_LOOK_FOR"

# specify the extension

extension = ".log"

# checking whether the path exist or not

if os.path.exists(path):

# check whether the path is directory or not

if os.path.isdir(path):

# iterating through the subfolders

for root_folder, folders, files in os.walk(path):

# checking of the files

for file in files:

# file path

file_path = os.path.join(root_folder, file)

# extracting the extension from the filename

file_extension = os.path.splitext(file_path)[1]

# checking the file_extension

if extension == file_extension:

# deleting the file

if not os.remove(file_path):

# success message

print(f"{file_path} deleted successfully")

else:

# failure message

print(f"Unable to delete the {file_path}")

else:

# path is not a directory

print(f"{path} is not a directory")

else:

# path doen't exist

print(f"{path} doesn't exist")

if __name__ == '__main__':

# invoking main function

main()

不要忘记更新上面代码中的path和extension变量,以满足您的要求。

以上就是python 删除系统中的文件的详细内容,更多关于python 删除文件的资料请关注站圈网其它相关文章!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值