WRF如何批量输出文件添加或删除文件名后缀

2023-10-13 06:12

本文主要是介绍WRF如何批量输出文件添加或删除文件名后缀,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 批量添加文件名后缀

#1----批量添加文件名后缀(.nc)。#指定wrfout文件所在的文件夹
path = "/mnt/wtest1/"#列出路径path下所有的文件
file_names = os.listdir(path)    #遍历在path路径下所有以wrfout_d01开头的文件,在os.path.basename()返回的一个代表指定路径基本名称的字符串值后加入“.nc”后缀,再重命名文件。
for file in file_names:if file[0:10] != 'wrfout_d01':continuebase_name = os.path.basename(file)new_n = base_name + '.nc'os.rename(os.path.join(path, file), os.path.join(path, new_n))#建立空列表,选取path文件路径下所有前缀名为wrfout_d01的nc文件填充该列表
list_names = []
for ncfile in os.listdir(path):if ncfile[0:10] != 'wrfout_d01':    #通过索引选择想要的数据,可以按照需要进行更改continuelist_names.append(ncfile)#将模拟结果文件名按照时间进行排序
list_names_sort = np.sort(list_names)

2.批量删除文件名后缀

假如运行了两遍添加.nc后缀的代码,生成了.nc.nc后缀命名的文件名,如何批量删掉一组.nc后缀?

# coding:utf-8
#删除文件名后缀
import os, shutilrootdir = path        # 原始带有后缀名的文件存放路径
remove_path = '/mnt/wtest1/removenc/'   # 去除了后缀名的文件存放路径,路径必须存在。# 修改文件名
def renameFile(oldname, newname):print("oldname:", oldname)print("newname:", newname)# os.rename(oldname, newname)shutil.copyfile(oldname, newname)    #shutil.copyfile(src, dst):将名为src的文件的内容(无元数据)复制到名为dst的文件中 。# shutil.move(newname,remove_path)    #shutil.move(src, dst):将名为src的文件夹中的内容(无元数据)递归移动到名为dst的文件夹中,在此的作用同shutil.copyfile。# 列出文件
def listTxtFile(filepath):if os.path.isfile(filepath) and ".nc" or ".nc.nc"== filepath[-6:]:#根据后缀名的长度设置,.nc.nc为[-6:]。 oldName = filepathnewName = oldName[:-3]      #根据所要保存的后缀名的长度设置renameFile(oldName, newName)shutil.move(newName, remove_path)# 遍历目录下所有的文件,
def listPath(filepath):fileList = os.listdir(filepath)for file in fileList:files = os.path.join(filepath, file)if os.path.isdir(files):listPath(files)else:listTxtFile(files)if __name__ == "__main__":listPath(rootdir)

这篇关于WRF如何批量输出文件添加或删除文件名后缀的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/201307

相关文章

SQL Server修改数据库名及物理数据文件名操作步骤

《SQLServer修改数据库名及物理数据文件名操作步骤》在SQLServer中重命名数据库是一个常见的操作,但需要确保用户具有足够的权限来执行此操作,:本文主要介绍SQLServer修改数据... 目录一、背景介绍二、操作步骤2.1 设置为单用户模式(断开连接)2.2 修改数据库名称2.3 查找逻辑文件名

Redis过期删除机制与内存淘汰策略的解析指南

《Redis过期删除机制与内存淘汰策略的解析指南》在使用Redis构建缓存系统时,很多开发者只设置了EXPIRE但却忽略了背后Redis的过期删除机制与内存淘汰策略,下面小编就来和大家详细介绍一下... 目录1、简述2、Redis http://www.chinasem.cn的过期删除策略(Key Expir

C#如何去掉文件夹或文件名非法字符

《C#如何去掉文件夹或文件名非法字符》:本文主要介绍C#如何去掉文件夹或文件名非法字符的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C#去掉文件夹或文件名非法字符net类库提供了非法字符的数组这里还有个小窍门总结C#去掉文件夹或文件名非法字符实现有输入字

Java如何从Redis中批量读取数据

《Java如何从Redis中批量读取数据》:本文主要介绍Java如何从Redis中批量读取数据的情况,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一.背景概述二.分析与实现三.发现问题与屡次改进3.1.QPS过高而且波动很大3.2.程序中断,抛异常3.3.内存消

使用C#删除Excel表格中的重复行数据的代码详解

《使用C#删除Excel表格中的重复行数据的代码详解》重复行是指在Excel表格中完全相同的多行数据,删除这些重复行至关重要,因为它们不仅会干扰数据分析,还可能导致错误的决策和结论,所以本文给大家介绍... 目录简介使用工具C# 删除Excel工作表中的重复行语法工作原理实现代码C# 删除指定Excel单元

MySQL数据库实现批量表分区完整示例

《MySQL数据库实现批量表分区完整示例》通俗地讲表分区是将一大表,根据条件分割成若干个小表,:本文主要介绍MySQL数据库实现批量表分区的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考... 目录一、表分区条件二、常规表和分区表的区别三、表分区的创建四、将既有表转换分区表脚本五、批量转换表为分区

Python对PDF书签进行添加,修改提取和删除操作

《Python对PDF书签进行添加,修改提取和删除操作》PDF书签是PDF文件中的导航工具,通常包含一个标题和一个跳转位置,本教程将详细介绍如何使用Python对PDF文件中的书签进行操作... 目录简介使用工具python 向 PDF 添加书签添加书签添加嵌套书签Python 修改 PDF 书签Pytho

使用Java将实体类转换为JSON并输出到控制台的完整过程

《使用Java将实体类转换为JSON并输出到控制台的完整过程》在软件开发的过程中,Java是一种广泛使用的编程语言,而在众多应用中,数据的传输和存储经常需要使用JSON格式,用Java将实体类转换为J... 在软件开发的过程中,Java是一种广泛使用的编程语言,而在众多应用中,数据的传输和存储经常需要使用j

Oracle 通过 ROWID 批量更新表的方法

《Oracle通过ROWID批量更新表的方法》在Oracle数据库中,使用ROWID进行批量更新是一种高效的更新方法,因为它直接定位到物理行位置,避免了通过索引查找的开销,下面给大家介绍Orac... 目录oracle 通过 ROWID 批量更新表ROWID 基本概念性能优化建议性能UoTrFPH优化建议注

Java如何根据文件名前缀自动分组图片文件

《Java如何根据文件名前缀自动分组图片文件》一大堆文件(比如图片)堆在一个目录下,它们的命名规则遵循一定的格式,混在一起很难管理,所以本文小编就和大家介绍一下如何使用Java根据文件名前缀自动分组图... 目录需求背景分析思路实现代码输出结果知识扩展需求一大堆文件(比如图片)堆在一个目录下,它们的命名规