python,文件操作集

文件读取赋值给数组

def file2array(filepath):
	filepath=filepath
	ary=[]
	with open(filepath,'r') as f:
		for line in f:
			ary.append(line)

	return ary

文件中的数据:

0

1

2

调用结果:

['0\n', '1\n', '2']

需要使用strip来去掉回车

另外一种方法,在读文件的时候就把回车去掉

def file2array(filepath):
	filepath=filepath
	ary=[]
	with open(filepath,'r') as f:
		for line in f:
			ary.append(line.strip('\n'))

	return ary

调用结果

['0', '1', '2']

删除文件夹

文件夹为空的话,用os模块就可以

import os
os.remove(path)  # path是文件的路径,如果这个路径是一个文件夹,则会抛出OSError的错误,这时需用用rmdir()来删除
os.rmdir(path)  # path是文件夹路径,注意文件夹需要时空的才能被删除
os.unlink('F:\新建文本文档.txt')  # unlink的功能和remove一样是删除一个文件,但是删除一个删除一个正在使用的文件会报错。

文件夹不为空,可以使用shuttil模块

dest_folder='C:\\SimplyLive_Log_Collector\\log'
shutil.rmtree(dest_folder)

成功

拷贝文件

#导入shutil模块和os模块
import shutil,os

#复制单个文件
shutil.copy("C:\\a\\1.txt","C:\\b")
#复制并重命名新文件
shutil.copy("C:\\a\\2.txt","C:\\b\\121.txt")
#复制整个目录(备份)
shutil.copytree("C:\\a","C:\\b\\new_a")

#删除文件
os.unlink("C:\\b\\1.txt")
os.unlink("C:\\b\\121.txt")
#删除空文件夹
try:
    os.rmdir("C:\\b\\new_a")
except Exception as ex:
    print("错误信息:"+str(ex))#提示:错误信息,目录不是空的
#删除文件夹及内容
shutil.rmtree("C:\\b\\new_a")

#移动文件
shutil.move("C:\\a\\1.txt","C:\\b")
#移动文件夹
shutil.move("C:\\a\\c","C:\\b")

#重命名文件
shutil.move("C:\\a\\2.txt","C:\\a\\new2.txt")
#重命名文件夹
shutil.move("C:\\a\\d","C:\\a\\new_d")

打开文件

with open('C:\\SimplyLive_Log_Collector\\log\\current_PC_info.txt','a') as f:

这里的参数a,表示:当文件不存在时会自动创建

列表总结:

mode文件存在文件不存在流位置
r读取文件内容错误×begin

w

清空文件内容创建×begin
a保留原始内容创建×begin/end
r+读写文件内容错误begin
w+清空文件内容创建begin
a+保留原始内容创建begin/end

 

判断文件或者文件夹是否存在

主要涉及到三个函数

1、os.path.exists(path) 判断一个目录是否存在

2、os.makedirs(path) 多层创建目录

3、os.mkdir(path) 创建目录

os.path.exists(path) #文件或者文件夹判断都可以,不过只支持路径,不支持具体的某个文件

判断某个文件是否存在

import os

os.path.isfile("test-data")

 

 

修改文件名字(tga文件)

 

import os
path = "Y:/1080tga/1080tga_big/Tennis Channel TGA/CC BG1/"    # 目标路径
 
"""os.listdir(path) 操作效果为 返回指定路径(path)文件夹中所有文件名"""
filename_list = os.listdir(path)  # 扫描目标路径的文件,将文件名存入列表
print(type(filename_list[0]))
a = 0
t=1000
for i in filename_list:
    used_name = path + filename_list[a]
    print(used_name)
    temp_t=str(t)
    new_name = path + 'Comp 3_0'+temp_t+'.tga'
    print(new_name)
    os.rename(used_name,new_name)
    a += 1
    t +=1
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值