Python中对文件操作可以用内置的open()函数
读文件
f=open(‘/home/test/test.txt‘,‘r‘) # 读模式打开文件 f.read() # 读取文件内容
除了正常的读取文件内容,一个常用的操作是判断文件内容是否为空,如下:
if len(f.read())==0: # 如果文件内容为空 xxxx
判断一个文件或者路径是否存在,如下(这里需要在代码中导入os module: import os):
file=‘/home/test/test.txt‘ dir=‘/home/test‘ os.path.isfile(file) # 文件是否存在 os.path.exist(dir) # 路径是否存在
写文件
文件以写模式打开后,可以对文件写入内容,如果已经存在了test文件,并且内部有内容,w模式写入之后会覆盖掉原来的文件内容。
f=open(‘/home/test/test.txt‘,‘w‘) f.write(‘This is the new line\n‘)
在文件内容中追加,可以使用a模式
f=open(‘/home/test/test.txt‘,‘a‘) # 以a模式打开文件 f.write(‘This will append a new line\n‘) # 追加一行 f.close()
修改文件内容,可以使用两个文件:原文件和临时文件,读取原文件的每一行,对符合要求的行做修改,并把每一行都写入临时文件中,最后使用临时文件覆盖掉原文件。
在使用os.rename的时候,如果目标文件已经存在的情况下,使用os.rename(临时文件,目标文件)时会报错(file exists)。所以,在使用os.rename之前先用os.remove()删除目标文件。
original_file=‘/home/test/test.o‘ temp_file=‘/home/test/temp‘ f_original=open(original_file,‘r‘) f_temp=open(temp_file,‘w‘) for line in f_original.readlines(): if keywork in line: line=line.replace(line,‘This is a new line‘) f_temp.write(line) f_temp.close() f_original.close() if os.path.isfile(original_file): os.remove(original_file) os.rename(temp_file,original_file)
注意,文件打开以后需要在操作完成之后关闭文件,不然会产生没有关闭文件的错误。
f.close() #关闭文件
处理Excel文件
处理Excel文件的话,需要模块xrld,可以在 https://pypi.python.org/pypi/xlrd 上下载安装。
打开Excel文件
excel_file=‘/home/test/list.xls‘ data = xlrd.open_workbook(excel_file) #打开 excel文件 table=data.sheets()[0] #获取第一个sheet
时间: 2024-10-01 23:05:10