如何用python整理文件夹_python按照文件创建日期整理文件至文件夹

# -*- coding: utf-8 -*-

# @Time : 2019-02-15 13:31

# @Author : cxa

# @File : sortbydate.py

# @Software: PyCharm

import glob

import pathlib

import os

import datetime

import traceback

from concurrent import futures

import time

from functools import partial

'''

根据文件创建文件建立文件夹

'''

def to_str_path(path):

if path:

new_path = os.fspath(path)

return new_path

def movefile(image_path, dir_path):

try:

file_time = os.path.getctime(image_path)

stamp_to_datetime = datetime.datetime.fromtimestamp(file_time)

file_date = datetime.datetime.strftime(stamp_to_datetime, "%Y%m%d")

date_dir = (dir_path.joinpath(file_date))

jpg_dir_path, jpg_name = os.path.split(image_path)

if not os.path.exists(date_dir):

os.makedirs(to_str_path(date_dir))

print(f"创建文件夹:{file_date},当前路径是{date_dir}")

new_file_path = to_str_path(os.path.join(date_dir, jpg_name))

print(f"开始移动文件{jpg_name},完整路径 {new_file_path}")

os.rename(image_path, new_file_path) # 移动文件或重命名,这里是移动文件

print(f"指定文件已经移动到当前目录的{date_dir}目录")

except:

print(traceback.format_exc())

def start(filename: str = None, filetype: str = "jpg"):

'''

:param filename: 指定文件夹名,默认当前py文件所在的文件夹

:param date_str: 删除日期格式yyyymmdd

:param filetype: 需要删除的文件类型默认jpg.

:return: None

'''

filename = filename or __file__

dir_path = pathlib.Path(filename).resolve().parent

image_path_list = glob.glob(to_str_path(dir_path.joinpath(f"*.{filetype}")))

movef = partial(movefile, dir_path=dir_path)

with futures.ThreadPoolExecutor(max_workers=10) as pool:

pool.map(movef, image_path_list)

if __name__ == '__main__':

start_t = time.time()

start()

end = time.time()

print(end - start_t)

Python定期删除文件、整理文件夹

1.根据传入的参数,文件所在目录,匹配文件的正则表达式,过期天数进行删除,这些可写在配置文件del_file.conf. del_file3.py #!/usr/bin/env python # en ...

利用Python将文件进行分类整理

利用Python将文件进行分类整理 功能 根据一个文件夹中的文件类型建立相应的文件夹,将同一种类型的文件放在一个文件夹中. 实现思路 主要用到 os 和 shutil 两个库,os 用来获取文件夹中的 ...

python实现查看目录下重复的文件

该python 脚本有以下三个功能: 1. 实现查看目录下重复的文件,输出文件按修改时间升序排列 2. 将按修改时间排列比较旧的.可删除的文件列出来 3. 按目录对重复文件进行统计,比如,目录/tmp ...

[转载]Python 元组、列表、字典、文件

python的元组.列表.字典数据类型是很python(there python is a adjective)的数据结构.这些结构都是经过足够优化后的,所以如果使用好的话,在某些area会有很大的益 ...

python使用简单http协议来传送文件

python使用简单http协议来传送文件!在ubuntu环境下,局域网内可以使用nc来传送文件,也可以使用基于Http协议的方式来下载文件我们可以使用python -m SimpleHTTPServ ...

python引入导入自定义模块和外部文件

参考:http://blog.csdn.net/devil_2009/article/details/15816237 项目中想使用以前的代码,或者什么样的需求致使你需要导入外部的包 如果是web 下 ...

linux文件权限整理

网上对linux文件权限的已经很多,不过还是要自己整理一下,不然每次都要查资料. linux下所有东西都是文件,包括设备,所以这里的文件也包括文件夹. 先是查看文件权限:ls -lh xzc@xzc- ...

Python核心编程读笔 8: 文件和输入输出

第九章 文件和输入输出 一.文件内建函数.方法.属性 1 文件内建函数 file_object = open(file_name, access_mode='r', buffering=-1) 工厂函 ...

Python 函数基础、有序集合、文件操作(三)

一.set 特点: set是一个无序且不重复的元素集合访问速度快:天生解决元素重复问题 方法: 初始化 >>> s1 = set()>>> print(type(s ...

随机推荐

Java精确计算小数

Java在计算浮点数的时候,由于二进制无法精确表示0.1的值(就好比十进制无法精确表示1/3一样),所以一般会对小数格式化处理. 但是如果涉及到金钱的项目,一点点误差都不能有,必须使用精确运算的时候, ...

DIY FSK RFID Reader

This page describes the construction of an RFID reader using only an Arduino (Nano 3.0 was tested, b ...

【好文翻译】一步一步教你使用Spire.Doc转换Word文档格式

背景: 年11月,微软宣布作为ECMA国际主要合作伙伴,将其开发的基于XML的文件格式标准化,称之为"Office Open XML" .Open XML的引进使office文档结 ...

VS平台工具集版本

参考:http://blog.csdn.net/hillseas/article/details/47373313 VS从2010之后开始支持使用之前的版本进行编译,可以在工程属性->常规中进行 ...

Hibernate查询方法总结

1. HQL查询 HQL是Hiberante官方推荐的Hibernate检索方式,它使用类似SQL的查询语言,以面向对象的方式从数据库中查询.可以使用HQL查询具有继承.多态和关 联关系的数据.在检索 ...

.NET Core 配置Configuration杂谈

前言 .NET Core 在配置文件的操作上相对于.NET Framework做了不少改变,今天来聊一聊.关于Configuration的Package都是以Microsoft.Extensions. ...

Linux 系统中的内部与外部命令

linux中的命令大致可分为两类,内部命令和外部命令: 内部命令(builtin command):也称shell内嵌命令 外部命令(external command):存放在一个文件中,使用时需要去 ...

前端框架之Vue(9)-组件基础&vue-cli

组件基础 基本示例 这里有一个 Vue 组件的示例:

Unity使用协程技术制作倒计时器

先上效果图 图片资源来自http://www.51miz.com/ 1.素材准备 在http://www.51miz.com/搜索png格式的数字图片,用Unity自带的图集制作工具,进行分割.Con ...

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果您想加密一个文件夹或zip文件,可以使用Python中的加密库来实现。以下是一些常用的加密库: 1. pyAesCrypt:这是一个用于加密和解密文件Python库。它使用AES加密算法,并且可以处理大文件。 2. cryptography:这是一个用于加密和解密数据的Python库。它支持多种加密算法,包括AES、DES、RSA等。 3. PyCrypto:这是一个Python密码库,支持多种加密算法,包括AES、DES、RSA、Blowfish等。 下面是使用pyAesCrypt加密文件夹或zip文件的代码示例: ```python import pyAesCrypt import os # 定义加密函数 def encrypt_folder(password, src_folder, dest_zip): bufferSize = 64 * 1024 pyAesCrypt.encryptFile(src_folder, dest_zip, password, bufferSize) # 定义解密函数 def decrypt_folder(password, src_zip, dest_folder): bufferSize = 64 * 1024 pyAesCrypt.decryptFile(src_zip, dest_folder, password, bufferSize) # 加密文件夹 password = "mypassword" src_folder = "myfolder" dest_zip = "myfolder.zip" encrypt_folder(password, src_folder, dest_zip) # 解密文件夹 src_zip = "myfolder.zip" dest_folder = "myfolder_decrypted" decrypt_folder(password, src_zip, dest_folder) ``` 在上面的代码中,我们使用pyAesCrypt库来加密和解密文件夹。首先,我们定义了两个函数:encrypt_folder和decrypt_folder,分别用于加密和解密文件夹。接着,我们定义了一个密码变量和两个文件路径变量,用于指定要加密的文件夹和加密后的zip文件。最后,我们调用encrypt_folder函数来加密文件夹,调用decrypt_folder函数来解密文件夹

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值