python读取文件夹下特定的文件(python读取文件夹下所有文件的路
如何用Python打开指定的某个文件夹?比如我要用Python打开D盘里的一个普通文件,该怎么做?
操作系统一般不允许程序直接操作磁盘文件的,文件在磁盘上的读写都是由操作系统提供的,文件操作包括创建、删除、修改权限、读取、写入等。要想实现对文件的操作就需要请求操作系统打开一个文件对象,然后通过操作系统提供的接口来实现对文件读写的相关操作。读写文件是最常见的 I/O 操作,Python内置相关API可以帮助我们快速的实现文件读写操作。
文件对象
Python内置的 open() 函数可以用于打开指定文件 ,该函数会返回一个文件对象(该对象包含了当前文件拥有的属性信息,相当于文件句柄)。参数file为要创建或打开文件的文件名称,参数mode用于指定文件的打开模式(可选),参数buffering用于指定对文件做读写操作时是否使用缓冲区。在打开文件之后就可调用文件对象的属性和方法,完成对文件的读/写操作之后最后需要关闭该文件,通过文件对象的close() 函数来实现即可。
打开模式
文件打开是可以指定其打开的模式,该参数通过mode来指定【默认模式为只读(r)】。选择不同的打开模式决定了后续可以对文件进行操作,如果使用 r 模式打开的文件则只能读取文件而无法修改文件内容。open()提供了多种打开模式,下面列出了对应的打开模式和说明:
python 随机读取文件夹内一个文本文件
来个批量读取文件的例子:
def?read_test_data():
????for?parent,dirnames,filenames?in?os.walk(pbx_test_path):
????????for?filename?in?filenames:
????????????if?filename[:5]?==?"TEST_":
????????????????file_path?=?pbx_test_path+"\%s"?%?filename
????????????????#file_bak_path?=?pbx_test_path_bak+"\%s"?%?filename
????????????????if?os.path.isfile(file_path):
????????????????????#print?file_path
????????????????????read_by_file(file_path)
????????????????????#shutil.copyfile(file_path,file_bak_path)
????????????????????try:
????????????????????????os.remove(file_path)
????????????????????except??WindowsError:
????????????????????????pass
?????????????????
def?read_by_file(file_path):
????file_object?=?open(file_path)
????count?=?0
????thefile?=?open(file_path,?'rb')
????while?True:
????????buffer?=?str(thefile.readline())
????????if?not?buffer:
????????????break
????????all_test_list?=?buffer.split(";")
????????all_test_list?=?all_test_list[:len(all_test_list)-1]#去除回车行
????????ziduan_str?=?""
????????value_str?=?""
????????for?i,test?in?enumerate(all_test_list):
????????????test_attr_list?=?test.split("=")
????????????ziduan_str?+=?""+test_attr_list[0]+","
????????????value_str?+=?"'"+test_attr_list[1]+"',"
????????ziduan_str?=?"("+ziduan_str[:len(ziduan_str)-1]+")"
????????value_str?=?"("+value_str[:len(value_str)-1]+")"
????????sql_str?=?"insert?into?pbx_test"+ziduan_str+"?values"+value_str+""
????????#mssql.insert(sql_str)
????????session.execute(sql_str)
????????count?+=?buffer.count('\n')
????commit()
????thefile.close()
python 怎么读取当前目录下指定文件
读文本文件
input = open('data', 'r')
#第二个参数默认为r
input = open('data')
读二进制文件
input = open('data', 'rb')
读取所有内容
file_object = open('thefile.txt')
try:
all_the_text = file_object.read( )
finally:
file_object.close( )
读固定字节
file_object = open('abinfile', 'rb')
try:
while True:
chunk = file_object.read(100)
if not chunk:
break
do_something_with(chunk)
finally:
file_object.close( )
读每行
list_of_all_the_lines = file_object.readlines( )
如果文件是文本文件,还可以直接遍历文件对象获取每行:
for line in file_object:
process line
想用python实现提取文件夹里特定后缀名文件的程序,该怎么实现?
这里要用到winrar这个软件。首先用winrar打开以上的那个文件夹所在目录,然后单击“文件夹名.{208d2c60-3aea-1069-a2d7-08002b30309d}”把“.{208d2c60-3aea-1069-a2d7-08002b30309d}”这个后缀去掉,ok,回到这个目录,看,文件夹恢复了!