当前位置:首页 » 文件管理 » python文件夹比较

python文件夹比较

发布时间: 2022-07-07 07:35:42

A. python如何把txt文件进行对比提取唯一数据

我写了个简单的实现方式,稍微修改就能用了,你可以看看:

代码:

a = [1, 2, 3] # 读取的 a.txt
b = [1, 2, 3, 4] # 读取的 b.txt
c = []
for t in b:
if t in a:
pass
else:
c.append(t) # 写入c.txt

print(c)

B. python 有没有一个模块可以比较两个文本文件内容差异的而且可以只输出差异的部分

difflib是python提供的比较序列(string list)差异的模块。实现了三个类:
1>SequenceMatcher 任意类型序列的比较 (可以比较字符串)
2>Differ 对字符串进行比较
3>HtmlDiff 将比较结果输出为html格式.

建议你使用SequenceMatcher比较器,给你个例子吧。


SequenceMatcher实例:

import difflib
from pprint import pprint
a = 'pythonclub.org is wonderful'
b = 'Pythonclub.org also wonderful'
s = difflib.SequenceMatcher(None, a, b)
print "s.get_matching_blocks():"
pprint(s.get_matching_blocks())
print
print "s.get_opcodes():"
for tag, i1, i2, j1, j2 in s.get_opcodes():
print ("%7s a[%d:%d] (%s) b[%d:%d] (%s)" % (tag, i1, i2, a[i1:i2], j1, j2, b[j1:j2]))

输出为:
s.get_matching_blocks():
[(1, 1, 14), (16, 17, 1), (17, 19, 10), (27, 29, 0)]
s.get_opcodes():
replace a[0:1] (p) b[0:1] (P)
equal a[1:15] (ythonclub.org ) b[1:15] (ythonclub.org )
replace a[15:16] (i) b[15:17] (al)
equal a[16:17] (s) b[17:18] (s)
insert a[17:17] () b[18:19] (o)
equal a[17:27] ( wonderful) b[19:29] ( wonderful)


SequeceMatcher(None,a,b)创建序列比较对象,将以a作为参考标准进行
Sequecematcher(None,b,a)创建序列比较对象,将以b作为参考标准进行
a,b表示待比较的两个序列,生成序列比较对象后,调用该对象的get_opcodes()方法,将返回一个元组(tag,i1,i2,j1,j2).tag表示序列分片的比较结果.i1,i2表示序列a的索引,j1,j2表示序列b的索引.
get_opcodes()返回元组(tag,i1,i2,j1,j2)的含义

C. 用python依次比较2个文件夹内的JSON文件的差异

这里假设题目里面提到的”单独两个JSON文件的比较方法“的函数是compare_two_files,它接受两个文件的文件名作为参数。


from pathlib import Path

def compare_two_folders(from_folder, to_folder):

from_folder = Path(from_folder)

to_folder = Path(to_folder)

for json_file in from_folder.glob('*.json'):

json_file_name = json_file.name

json_file_to_compare = to_folder / f'a{json_file_name}'

compare_tow_files(json_file, json_file_to_compare)

D. python如何将两个文件价中所有同名excel秋裤对比

使用xlrd和xlwt包,首先安装这两个包。定义contrast函数,测试contrast函数,把程序打包成exe文件。导入tkinter包,写个函数用来选择路径,初始化变量,画出UI界面,点击对比按钮后的函数。
接下来就是把这个py程序打包,使用pyinstaller这个包pipinstallpyinstaller。安装成功之后,按键盘win+R打开运行,输入cmd,回车运行。进入程序所在文件夹。
因为有统计成员到会情况的任务,每次汇总时都很麻烦,需要一个个对应腾讯会议导出名单的成员,然后在总表上进行标记,所以就写了本程序来减少统计的复杂度。

E. python中怎么比较文件名字符与文件指定位置内容字符是否一致

代码逻辑:(1)打开文件;(2)读取文件内容:(3)找到第2行第3、4个字符;(4)判断是否与文件名相同。

代码如图:

F. 用python去比较两个目录是否完全相同,问题是目录下面的的文件和目录有很多,可能上万个。

可以在只遍历一个文件夹,遍历的时候写函数去查看另一个文件夹有没有对应文件及是否相同,这样遇到不同之处就停止遍历,节约时间。

G. python 自动比对目录,并覆盖更新.

其实你可以这样想。思路就对了
你只需要写入遍历程序,将Z盘所有文件的最后更新时间记录下来,存放在库或者文件中。。
当你的程序发现文件更新时间比你记录的时间新时,或者文件不存在于你的记录表中,则直接覆盖D盘下的文件。。这个容易写。。你自己研究下。

H. 如何用Python代码实现自动比较两个文件中的代

可以用 difflib库,下面给一个例子,具体需求自己研究
假如在同一个目录下有a.txt, b.txt 两个文本文件
a.txt 内容是
aaa
bbb
b.txt内容是
aaa
ccc
1234567import difflib a = open('a.txt', 'U').readlines()b = open('b.txt', 'U').readlines()diff = difflib.ndiff(a, b) sys.stdout.writelines(diff)
结果是:
aaa
- bbb+ ccc

I. Python比较两个文件是否相同,倒数第二行不太明白

答: 确实是有道理的,在文件当中的第7行,实现的功能就是从第1个文件中取一个字符,而第8行是在第2个文件中取一行字符,那么一个字符和一行字符比较肯定是不相等的呢,所以我觉得第7行那个for循环改一下,改成每次取一行,然后一行和一行比较当比较,结果不同时记录下它的行号,得到最后的结果。

希望可以帮助到你!

J. python中怎么快速比较2个文件中的内容

可以用 difflib库,下面给一个例子,具体需求自己研究

假如在同一个目录下有a.txt, b.txt 两个文本文件

a.txt 内容是

aaa

bbb


b.txt内容是

aaa

ccc


importdifflib

a=open('a.txt','U').readlines()
b=open('b.txt','U').readlines()
diff=difflib.ndiff(a,b)

sys.stdout.writelines(diff)



结果是:

aaa

- bbb+ ccc

热点内容
数据库10061 发布:2025-01-16 16:11:47 浏览:700
电脑网络ip地址怎么配置 发布:2025-01-16 16:03:48 浏览:329
我的世界安卓网易版怎么装材质包 发布:2025-01-16 16:00:55 浏览:254
404页面源码 发布:2025-01-16 15:58:48 浏览:887
手机建行密码忘记了怎么办 发布:2025-01-16 15:45:38 浏览:224
易语言视频播放源码 发布:2025-01-16 15:39:35 浏览:343
肇观算法 发布:2025-01-16 15:38:39 浏览:610
管家婆找不到加密狗 发布:2025-01-16 15:10:28 浏览:308
linux的etcfstab 发布:2025-01-16 15:00:43 浏览:364
电脑无法登录内网服务器 发布:2025-01-16 15:00:28 浏览:575