python批量修改文件夹名称_python文件扩展名主要有

python批量修改文件夹名称_python文件扩展名主要有1、引言需要把.dat格式转化成.txt格式2、实现##python批量更换后缀名importos#列出当前目录下所有的文件files=os.listdir(‘.’)#print(‘files’,files)forfilenameinfiles:portion=os.path.splitext(filename)#如果后缀是.datifp

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

1、引言

需要把.dat 格式 转化成 .txt格式

2、实现

# python批量更换后缀名
import os

# 列出当前目录下所有的文件
files = os.listdir('.')
for filename in files:
	portion = os.path.splitext(filename)
	# 如果后缀是.dat
	if portion[1] == ".dat":  
		# 重新组合文件名和后缀名
		newname = portion[0] + ".txt"   
		os.rename(filename,newname)

这里有一个缺点,就是,需要把程序放在与修改的文件同一目录下,因为filenames只是获取了程序目录的文件名。


自己本来想修改一下程序,实现,程序不在文件目录下也能进行修改操作,可是,还没有成功,思路如下:

# python批量更换后缀名

import os
import sys
sys.path.append(r"G:\traindataDAT\ ")
# 列出当前目录下所有的文件
files = os.listdir(r"G:\traindataDAT")

for filename in files:
	portion = os.path.splitext(filename)
	# 如果后缀是.dat
	if portion[1] == ".dat":  
		# 重新组合文件名和后缀名
		
		newname = portion[0] + ".txt"   
		os.rename(filename,newname)

总感觉程序是有问题,就是不知道该如何修改,难道是在filename变成完整的路径吗?


根据这个思路,重新写了一个可以实现程序和文件不在同一目录的操作:

# python批量更换后缀名
import os
import sys
path0=r"G:\testdataTXT"
path1=r"G:\testdataTXT"+'\\'
sys.path.append(path1)

# 列出当前目录下所有的文件
files = os.listdir(path0)
print('files',files)

for filename in files:
	portion = os.path.splitext(filename)
	# 如果后缀是.dat
	if portion[1] == ".dat":  
		# 重新组合文件名和后缀名
		newname = portion[0] + ".txt" 
		filenamedir=path1 +filename
		newnamedir=path1+newname
		os.rename(filenamedir,newnamedir)

victory


更新,正如评论中提到的用 os.chdir,改变当前工作目录到指定的路径。

# python批量更换后缀名
import os
import sys
os.chdir(r'F:/test')

# 列出当前目录下所有的文件
files = os.listdir('./')
print('files',files)

for fileName in files:
	portion = os.path.splitext(fileName)
	# 如果后缀是.dat 
	if portion[1] == ".dat":
		#把原文件后缀名改为 txt
		newName = portion[0] + ".txt" 
		os.rename(fileName, newName)

最近开通了个公众号,主要分享python原理与应用,推荐系统,风控等算法相关的内容,感兴趣的伙伴可以关注下。
在这里插入图片描述
公众号相关的学习资料会上传到QQ群596506387,欢迎关注。


参考:

  1. Python批量修改文件后缀的方法
  2. sys.path.append()用法_myself
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/190481.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • SAP 常用的BAPI

    SAP 常用的BAPIBAPI_ALE_MODEL_GETBAPI_BARCODE_SENDLISTBAPI_ANSWER_READMULTIPLEBAPI_APPCOMP_READMULTIPLEBAPI_PROCDIA_READMULTIPLEBAPI_PROCDIA_WRITEMULTIPLEBAPI_DIAVAR_READMULTIPLEBAPI_DIAVAR_WRITEMULTIPLEBAPI_PROCE

    2022年7月24日
    17
  • aorg.gjt.mm.mysql.Driver和com.mysql.jdbc.Driver的关系

    aorg.gjt.mm.mysql.Driver和com.mysql.jdbc.Driver的关系今天写项目时,发现mysql驱动是 aorg.gjt.mm.mysql.Driver ,以前还真的没有见过,真是见识太少,于是记录一下。 com.mysql.jdbc.Driver的前身是org.gjt.mm.mysql.Driver,现在主要用com.mysql.jdbc.Driver,但为了保持兼容性保留了org.gjt.mm.mysql.Driver这个路径的引用。…

    2022年6月13日
    24
  • PHP安装Eclipse与使用

    PHP安装Eclipse与使用PHP有非常多相当不错的开发工具,如ZendStudio、NetBeans、phpdesigner等,但对于习惯Java编程的程序员们来说,最经常使用的还要属Eclipse。那么Eclipse能用于

    2022年7月4日
    26
  • LINUX下 Udev详解[通俗易懂]

    如果你使用Linux比较长时间了,那你就知道,在对待设备文件这块,Linux改变了几次策略。在Linux早期,设备文件仅仅是是一些带有适当的属性集的普通文件,它由mknod命令创建,文件存放在/dev目录下。后来,采用了devfs,一个基于内核的动态设备文件系统,他首次出现在2.3.46内核中。Mandrake,Gentoo等Linux分发版本采用了这种方式。devfs创建的设备文件是动态的。但

    2022年4月18日
    45
  • 射频RC522一些知识「建议收藏」

    射频RC522一些知识「建议收藏」我的测试为RC522的读写模块和S50的射频卡:一.S50的射频卡有如下特点:1. 分为16个扇区,每个扇区为4块,每块16个字节,以块为存取单位2. 每个扇区有独立的一组密码及访问控制3. 每张卡有唯一序列号,为32位 二.射频卡的介绍1、M1卡分为16个扇区,每个扇区由4块(块0、块1、块2、块3)组成,(我们也将16个扇区的64个块按绝对地址编号为0~63,

    2022年7月26日
    18
  • 细说Spring——AOP详解(AOP概览)

    细说Spring——AOP详解(AOP概览)一、对AOP的初印象首先先给出一段比较专业的术语(来自百度):在软件业,AOP为AspectOrientedProgramming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而…

    2022年7月27日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号