python打开桌面文件_python整理桌面文件
背景
很多时候我们图方便,每次下载或者新建了内容都会放在桌面上,久而久之,可能桌面就会变成下面这副场景了,实在受不了,你可能就会开始收拾这个桌面了,有很多现成的工具可以帮助我们解决这个问题,但是作为一个爱编程的人,我们是不是也想试一试自己通过编程去解决这个问题,并且定制化程度还可以很高——想怎样整理就怎样整理。
我的整体思路是这样的:
1.列出当前文件夹下的所有文件。
2.判断是目录文件夹还是个体文件。
3.如果是目录文件夹,那么判断是空的还是非空的,空的就删除掉,非空就不处理。
4.如果是个体文件,把这些文件进行分类:图片,文档文件等。
5.创建两个文件夹分别是存放文档文件和图片文件,把对应的文件移动到对应的文件夹,这样基本上就实现一个简单的整理功能了。
这里我自己创建了一个比较乱的test文件夹作为我们测试的内容。
下面是具体实现代码:
1.列出所有文件
代码:import os
# 要处理的文件位置
process_dir = r'C:\Users\codemao\Desktop\python课程\文件和目录操作\test'
# 创建一个文件变量files存储所有文件名
files=os.listdir(process_dir)
# 打印查看效果
print(files)
效果:
2.判断是目录文件夹还是个体文件。
代码:import os
# 要处理的文件位置
process_dir = r'C:\Users\codemao\Desktop\python课程\文件和目录操作\test'
# 创建一个文件变量files存储所有文件名
files=os.listdir(process_dir)
for file in files:
# 如果是目录文件夹
if os.path.isdir(os.path.join(process_dir,file)):
# 如果是空文件夹
if not os.listdir(os.path.join(process_dir,file)):
print(file, "----是---空文件夹")
#不是空文件夹
else:
print(file, "----不是---空文件夹")
else:
print(file, "---是---个体文件")
效果:
3.空的就删除掉,非空就不处理
代码:import os
# 要处理的文件位置
process_dir = r'C:\Users\codemao\Desktop\python课程\文件和目录操作\test'
# 创建一个文件变量files存储所有文件名
files=os.listdir(process_dir)
for file in files:
# 如果是文件夹
if os.path.isdir(os.path.join(process_dir,file)):
# 如果是空文件夹删除
if not os.listdir(os.path.join(process_dir,file)):
os.rmdir(os.path.join(process_dir,file))
print(file, "空文件夹已删除")
else:
print(file, "---是---个体文件")
4.文件分类
如果是个体文件,把这些文件进行分类:图片,文档文件等代码:import os
# 要处理的文件位置
process_dir = r'C:\Users\codemao\Desktop\python课程\文件和目录操作\test'
# 创建一个文件变量files存储所有文件名
files=os.listdir(process_dir)
# 文件后缀列表
doc_file_ext=[".pdf",".txt",".py",".md",".zip",".rar",".xls",".doc"]
image_file_ext=[".png",".jpg",".gif"]
for file in files:
# 如果是文件夹
if os.path.isdir(os.path.join(process_dir,file)):
# 如果是空文件夹删除
if not os.listdir(os.path.join(process_dir,file)):
# os.rmdir(os.path.join(process_dir,file))
print(file, "空文件夹已删除")
else:
filename,ext=os.path.splitext(file)
if ext in doc_file_ext:
print(file, "---是文档文件")
elif ext in image_file_ext:
print(file, "---是图片文件")
效果:
5.创建文件移动图片
创建两个文件夹分别是存放文档文件和图片文件,把对应的文件移动到对应的文件夹,这样基本上就实现一个简单的整理功能了。
完整代码:import os
import shutil
# 要处理的文件位置
process_dir = r'C:\Users\codemao\Desktop\python课程\文件和目录操作\test'
# 列出文件
files=os.listdir(process_dir)
#存放文件的位置
image_file=os.path.join(process_dir,"images")
doc_file=os.path.join(process_dir,"docs")
# 如果不存在就创建
if not os.path.exists(image_file):
os.mkdir(image_file)
if not os.path.exists(doc_file):
os.mkdir(doc_file)
# 文件后缀列表
doc_file_ext=[".pdf",".txt",".py",".md",".zip",".rar",".xls",".doc"]
image_file_ext=[".png",".jpg",".gif"]
for file in files:
# 如果是文件夹
if os.path.isdir(os.path.join(process_dir,file)):
# 如果是空文件夹删除
if not os.listdir(os.path.join(process_dir,file)):
os.rmdir(os.path.join(process_dir,file))
print(file, "空文件夹已删除")
else:
# 获取文件前缀 后缀
filename,ext=os.path.splitext(file)
if ext in doc_file_ext:
# 移动文件到对应的文件夹
shutil.move(os.path.join(process_dir,file),doc_file)
elif ext in image_file_ext:
# 移动文件到对应的文件夹
shutil.move(os.path.join(process_dir,file),image_file)
最终效果:
完整代码图片:
python打开桌面文件_python整理桌面文件相关推荐
- python打开文件_python如何学习
1.Python 文件I/O 本章只讲述所有基本的 I/O 函数,更多函数请参考Python标准文档. 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个用逗号隔开的表达式.此函 ...
- 用python打开视频_python读取视频流提取视频帧的两种方法
本文实例为大家分享了python读取视频流提取视频帧的具体代码,供大家参考,具体内容如下 方法一:通过imageio库和skimage库 1. 安装环境: pip install imageio pi ...
- python打开电脑摄像头_Python调用摄像头
一.打开摄像头 import cv2 import numpy as np def video_demo(): capture = cv2.VideoCapture(0)#0为电脑内置摄像头 whil ...
- 用python打开视频_Python读取视频的两种方法(imageio和cv2)
用python读取视频有两种主要方法,大家可依据自己的需求进行使用. 方法一: 使用imageio库,没有安装的可用pip安装或自己下载,安装好后重启终端即可调用. import pylab impo ...
- python打开快捷方式_Python创建启动目录的快捷方式,python,到
# -*- coding:utf-8 -*- # author:lizonezhi import os import sys import pythoncom import win32com.clie ...
- python打开快捷方式_Python打开一个JAR快捷方式
I have a JAR file saved on my desktop, is there a way that I ca get python to pen this up, as if I w ...
- office是python打开方式_Python读取word文本操作详解
本文研究的主要问题时Python读取word文本操作,分享了相关概念和实现代码,具体如下. 一,docx模块 Python可以利用python-docx模块处理word文档,处理方式是面向对象的.也就 ...
- appium python 打开通知栏_python appium操作手机及app各种方法
#锁定屏幕时间秒 driver.lock(5) #将APP放置后台 参数时间秒 driver.background_app(5) #收起键盘 driver.hide_keyboard() #启动Act ...
- python打开虚拟环境_python 启动虚拟环境
假设你有两个Python项目-A和B,这两个项目都需要使用同一个第三方模块-tensorflow.如果这两个项目使用相同的tensorflow版本,也许不会有什么问题. 但是,当A和B项目使用不同的t ...
最新文章
- perl 的基本数据类型
- python开发教程视频教程_金牌大神讲师Alex带你学Python 153节课带你轻松学透Python开发视频教程_IT教程网...
- mybatis generator eclipse插件的安装
- java查询多条_Mybatis查询多条记录并返回List集合的方法
- python animation set data_imshow.set_数据()不适用于FuncAnimation
- Docker(二十三)-Docker使用pipework配置本地网络
- css3实现的一些灰色的导航条按钮
- 通过管理门户部署云服务与VIP交换
- 59. 预定义超全局变量
- pycharm git使用_通过Pycharm中的版本控制工具VCS使用Git
- win7 VS2010 Visual Assist X破解
- linux 有道 离线词典,180720_有道词典离线增强版添加词库(小众知识)
- sht30温湿度传感器中文手册_DHT11温湿度传感器编程思路以及代码的实现
- mac通过u盘启动linux系统,在mac下制作linux启动U盘
- 电容或电感的电压_电压和电流的超前与滞后,你能说清楚吗?
- 【DBSDFZOJ 4370】小宁的机器人(模拟)
- 云栖社区版权提示与说明【2018版】
- 最近在做文本匹配,想到了特征值的算法,自己写了一个文本计算算法。求批判。...
- 洛谷 P3858 路标设置
- halcon图像灰度操作
热门文章
- D.Strange_Fractions-2021ICPC上海站
- java 链表 置为null_Java: 链表head取出用后,置next=null为何可以加速gc?
- Android限制录制屏幕无声音,哪一个安卓录屏软件可以录制系统的声音
- 怎么剪切音频的一部分 去掉音频中的某段内容
- 小米手机,xxx正在删除小米账户上的联系人
- 基于springboot vue uniapp点餐外码系统源码(毕设)
- python京东自动签到_python 使用selenium登陆京东签到哪京豆
- Flutter系列之TextField限制数字输入
- 国产接口芯片兼容替换TI MM1192,用于通信设备协议
- 关于苹果手机打开钉钉小程序中处理的日期显示invalid date