需求来源于要批量删除一批文本文档的第一行,遂百度之,CSDN之。
只懂一点Python的头疼
先说一下我自己的理解,要想对一个对象进行操作,如增、删、改、替等,首先,你要有个对象,其次要知道这个对象是什么格式的,字符串?数组?列表?词典?限定了对象的格式,便知道了具体应该在哪个范围内操作。
话不多说,直接上码:
import os
path=r'E:\python34\eric6\txtRW'#包含所有待处理文档的文件地址
os.chdir(path)#更改目录
'''读取一个文档,删除第一行,另存为一个新的文档'''
for filename in os.listdir():
file=open(filename, 'r+')#‘r+’方式,可对文件进行读和写工作,‘filename’为**字符串**格式存储
rw=file.readlines()#此时'rw'相当于一个**链表**
print(rw)#不信自己打出来看看
del(rw[0])#删除第一行,也就是链表第一个元素,完全就是对链表的操作,还有pop(0)等操作
print(rw)#不确信的话再打出来看看
filename2=filename.rstrip('.txt')+'_new'+'.txt'#新的文档的名称,继承自旧文档,‘.rstrip’就是字符串删除的骚操作了,我也是门外汉啦。
file2=open(filename2, 'w')#‘w’的方式,向文件写入信息
file2.writelines(rw)#新建文档打开了就写进去了三,是把修改后的信息写进去了
file.close
file2.close#有始有终,关闭省电