⑴ python 如何编写脚本能够实现将2个文件夹中相同的文件输出到第三个文件夹里面
importos,hashlib,shutil
md5dict={}
A=r"A"
B=r"B"
C=r"C"
forfilenameinos.listdir(A):
hashvalue=hashlib.md5(open(os.path.join(A,filename)).read()).hexdigest()
md5dict[hashvalue]=os.path.join(A,filename)
forfilenameinos.listdir(B):
hashvalue=hashlib.md5(open(os.path.join(B,filename)).read()).hexdigest()
ifhashvalueinmd5dict:
shutil.(os.path.join(B,filename),os.path.join(C,filename))
⑵ 求Python程序,将固定文本文件中的文本按某字符串分开,输出几个新的文本文件
我也是新手,大家一起学习吧。保存成文件的话要指定编码格式,命令行就不内用第一句容了。
#coding=gbk
f1 = file("x.txt")
ss = "【dsfaa】"
sr = f1.read().split(ss)
f1.close()
for i in range(len(sr)):
f = file("x%d.txt" % i, "w")
f.write(sr[i] if i == 0 else ss + sr[i])
f.close()
⑶ python 从2个文件中提取不相同的内容并输出到第三个文件中
简单写了一个
#-*-coding:UTF-8-*-
importre
importsys
importos
str1=[]
str2=[]
str_mp=[]
fa=open("A.txt",'r')
fb=open("B.txt",'r')
fc=open("C.txt",'w+')
#将A.txt的内容逐行读到中
forlineinfa.readlines():
str1.append(line.replace(" ",''))
#将B.txt中的内容逐行读到str2中
forlineinfb.readlines():
str2.append(line.replace(" ",''))
#将两个文件中重复的行,添加到str_mp中
foriinstr1:
ifiinstr2:
str_mp.append(i)
#将两个文件的行合并,并去重
str_all=set(str1+str2)
#将重复的行,在去重的合并行中,remove掉,剩下的就是不重复的行了
foriinstr_mp:
ifiinstr_all:
str_all.remove(i)
#写行文件中
foriinlist(str_all):
fc.write(i+' ')
fa.close()
fb.close()
fc.close()
⑷ python如何遍历当前目录下所有文件,并输出后缀不为 py的文件名称
#coding=utf-8
'''
Created on 2014-11-14
@author: Neo
'''
import os
def GetFileList(dir, fileList):
newDir = dir
if os.path.isfile(dir):
fileList.append(dir.decode('gbk'))
elif os.path.isdir(dir):
for s in os.listdir(dir):
#如果需要忽略某些文件夹,使用以版下权代码
#if s == "xxx":
#continue
newDir=os.path.join(dir,s)
GetFileList(newDir, fileList)
return fileList
list = GetFileList('D:\\workspace\\PyDemo\\fas', [])
for e in list:
print e
⑸ python中如何将一个文件拆分为多个文件。即原文件中的一行分为一个文件并输出
fv=open('原文件','r')
n=1
for line in fv:
fv2=open('新文件'+'n','w')
fv2.write(line)
fv2.close()
n+=1
fv.close()