6个非常实用的 Python 代码块,适合收藏~
大家好,今天分享几个平时我会用到的 Python 代码块,每个都小而精,喜欢记得关注、点赞、收藏。
1,批量修改文件名
日常工作中,可能会有这样的需求:把一个文件夹下所有 jpg 图片转化为 png ;假设文件夹下只有4、5 张,手动修改的话是没问题,但如果数量达到上百张,就有点让人头疼,这个代码块正是用来解决此类问题的
import osdef batch_rename(work_dir, old_ext, new_ext):# files = os.listdir(work_dir)for filename in os.listdir(work_dir):# Get the file extensionsplit_file = os.path.splitext(filename)# Unpack tuple elementroot_name, file_ext = split_file# Start of the logic to check the file extensions, if old_ext = file_extif old_ext == file_ext:# Returns changed name of the file with new extentionnewfile = root_name + new_ext# Write the filesos.rename(os.path.join(work_dir, filename),os.path.join(work_dir, newfile))print("rename is done!")print(os.listdir(work_dir))
2 ,返回文件夹下所有指定文件名
有时我们需要统计一下当前文件夹下中包含全部的 png 文件或者说含有 png 图片数量,此功能常用于文件检索;标准库 os 虽然有一些很强大的函数,但没有一个能满足我们这个需求,那么我想下面的这个代码块或许能帮到你!
def get_filename(path,filetype): # 输入路径、文件类型 例如'.csv'name = []for root,dirs,files in os.walk(path):for i in files:if filetype+' ' in i+' ': # 这里后面不加一个字母可能会出问题,加上一个(不一定是空格)可以解决99.99%的情况name.append(i) return name # 输出由有后缀的文件名组成的列表
3,文件夹不存在时自动创建
这个功能在日常开发办公中会经常用到,主要用到了 os
模块的两个函数
os.path.exists(path)
判断文件夹是否存在;os.makedirs(path)
创建文件夹
import os # Import the OS moduleMESSAGE = 'The directory already exists.'
TESTDIR = 'testdir'
try:home = os.path.expanduser("~") print(home) # Print the locationif not os.path.exists(os.path.join(home, TESTDIR)): # os.path.join() for making a full path safelyos.makedirs(os.path.join(home, TESTDIR)) # If not create the directory, inside their home directoryelse:print(MESSAGE)
except Exception as e:print(e)
4,打印当前运行环境
如果你想利用 Python 脚本快速查看当前电脑的系统(Linux、Windows)、架构(32位还是 64 位)、处理器、Python 版本及运行环境等信息,下面这个代码块能够帮到你
import platform as plprofile = ['architecture','machine','node','platform','processor','python_build','python_compiler','python_version','release','system','version',
]class bcolors:HEADER = '\033[95m'OKBLUE = '\033[94m'OKGREEN = '\033[92m'WARNING = '\033[93m'FAIL = '\033[91m'ENDC = '\033[0m'BOLD = '\033[1m'UNDERLINE = '\033[4m'for key in profile:if hasattr(pl, key):print(key + bcolors.BOLD + ": " + str(getattr(pl, key)()) + bcolors.ENDC)
5,获取指定文件夹下内存大小
日常工作中这个模块我们可能用不到,查看文件大小的话用代码跑还不如直接鼠标右键查看该文件的属性信息;但是,对于以后开发工作中,可以将此功能镶嵌到开发的软件中,作为一个 监控文件夹内存大小
的功能存在
import os
import sys # Load the library module and the sys module for the argument vector'''try:directory = "H:/" # Set the variable directory to be the argument supplied by user.
except IndexError:sys.exit("Must provide an argument.")dir_size = 0 # Set the size to 0
fsizedicr = {'Bytes': 1,'KB': float(1) / 1024,'MB': float(1) / (1024 * 1024),'GB': float(1) / (1024 * 1024 * 1024)}
for (path, dirs, files) in os.walk(directory):for file in files: # Get all the filesfilename = os.path.join(path, file)dir_size += os.path.getsize(filename) # Add the size of each file in the root dir to get the total size.fsizeList = [str(round(fsizedicr[key] * dir_size, 2)) + " " + key for key in fsizedicr] # List of unitsif dir_size == 0:print("File Empty") # Sanity check to eliminate corner-case of empty file.
else:for units in sorted(fsizeList)[::-1]: # Reverse sort list of units so smallest magnitude units print first.print("{} Folder Size: ".format(directory)+ units)
6, 定时关机或重启
os 中 system 函数可通过设定一些参数,实现开关机包含定时命令;另外声明一下,此代码块仅供科普,如果正在用电脑的话请勿尝试,,,
import os
from os import system# 关机
# os.system("shutdown -s -t 60 ")# 重启
system("shutdown -r -t 100")
小结
以上是本篇文章的全部内容了,希望这 几个代码块能够对你以后日常工作有所帮助,觉得文章内容不错的话请记得点个赞,也算是对我的鼓励,
推荐文章
李宏毅《机器学习》国语课程(2022)来了
有人把吴恩达老师的机器学习和深度学习做成了中文版
上瘾了,最近又给公司撸了一个可视化大屏(附源码)
如此优雅,4款 Python 自动数据分析神器真香啊
梳理半月有余,精心准备了17张知识思维导图,这次要讲清统计学
年终汇总:20份可视化大屏模板,直接套用真香(文末附源码)
技术交流
欢迎转载、收藏、有所收获点赞支持一下!
目前开通了技术交流群,群友已超过2000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友
- 方式①、发送如下图片至微信,长按识别,后台回复:加群;
- 方式②、添加微信号:dkl88191,备注:来自CSDN
- 方式③、微信搜索公众号:Python学习与数据挖掘,后台回复:加群
6个非常实用的 Python 代码块,适合收藏~相关推荐
- 20 条非常实用的 Python 代码,建议收藏!
[欢迎关注微信公众号:厦门微思网络] 微思网络(官网):https://www.xmws.cn/ 据说Python之父-Guido Van Rossum打算让CPython更快,速度直接翻五倍,这是实 ...
- python代码块-python代码块
广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. 开发准备cas 的 python sdk 包含了用于访问和操作 cas ...
- orgmode导出html,含有python代码块的ORG-MODE导出为HTML时出错
最近在使用org2blog来将以前用org-mode写的笔记上传到博客的过程中, 发现有些笔记上传老是失败, 连个错误提示也没有. 通过二分法只保留部分笔记重新上传的方法, 最终发现是由于python ...
- 20条非常实用的Python代码实例
据说Python之父-Guido Van Rossum打算让CPython更快,速度直接翻五倍,这是实实在在的好消息.Python一直以来被诟病速度慢,影响开发效率,希望这次Guido老爷子能帮pyt ...
- python 代码块批量添加 Tab缩进 取消缩进 anaconda
#每天一点点# python 代码块批量添加 Tab缩进,取消缩进 选择需要缩进的代码块 Tab :集体向右缩进 Shift + Tab :集体向左回缩 我用anaconda
- 表示python代码块的是_编写高质量Python代码的59个有效方法,你用过几个
欢迎点击右上角关注小编,除了分享技术文章之外还有很多福利,私信学习资料可以领取包括不限于Python实战演练.PDF电子文档.面试集锦.学习资料等. 这个周末断断续续的阅读完了<Effectiv ...
- python 生成数组1:1:20_英特尔“演化算法”新框架:29个Python代码块,自动生成新算法...
点击上方 "码农真经" 关注,星标或者置顶 22点24分准时推送,第一时间送达 来源:公众号 新智元 | 编辑:真经君 码农真经(ID:coder_experience)第 133 ...
- python代码块使用缩进表示-Python 为什么抛弃累赘的花括号,使用缩进来划分代码块?...
大家好,这是"Python为什么"系列节目的文字稿(文末有观看地址). 本期话题:Python 为什么使用缩进来划分代码块,而不像其它语言使用花括号 {} 或者 "end ...
- python代码块-python小数据池,代码块的最详细、深入剖析
一,id,is,== 在Python中,id是什么?id是内存地址,那就有人问了,什么是内存地址呢? 你只要创建一个数据(对象)那么都会在内存中开辟一个空间,将这个数据临时加在到内存中,那么这个空间是 ...
最新文章
- self.view = nil 和[self.view release]的区别
- mysql执行查询出来的数据_F#连接到在线MySQL数据库执行查询
- Dalvik内存管理
- 使用dbUnit,JSON,HSQLDB和JUnit规则进行数据库单元测试
- Linux平台下Ntop流量监测安装,并实现Netflow全过程
- .net 任务调度 mysql_C#/.NET/.NET Core应用程序编程中实现定时任务调度的方法或者组件...
- 机器学习算法的流程总结
- python 读取txt中的英文内容 分析词频 可视化显示
- java 邮件发送 多人_java 发送邮件(可发送多人,抄送多人,可带附件)
- outlook邮箱如何群发邮件?outlook群发邮件如何相互之间看不到?
- 嵌入式常用裸机编程框架
- SSH known_hosts / authorized_keys 的解释
- sap采购订单更改记录_SAP采购运费发票处理
- wampserver下载以及安装教程
- 动漫制作都用html5吗,怎么制作h5动画?
- CXF 集成wss4j
- MMA-Mathematica初步了解和使用-MMA
- 杭电计算机复试面试题库,杭电电子分院历年复试题(整理版)
- SCAU2021数据库综合性实验报告
- 小米android手机密码忘了怎么解锁,小米手机锁屏密码忘了怎么解锁?