① python比较两个文件是否相同,倒数第二行不太明白
答: 确实是有道理的,在文件当中的第7行,实现的功能就是从第1个文件中取一个字符,而第8行是在第2个文件中取一行字符,那么一个字符和一行字符比较肯定是不相等的呢,所以我觉得第7行那个for循环改一下,改成每次取一行,然后一行和一行比较当比较,结果不同时记录下它的行号,得到最后的结果。
希望可以帮助到你!
② 在Python里怎么比较两个txt文档并且输出不同部分
我觉得这个问题编程不是最重要的问题,关键是需求和算法。
比如说两个文本,如何区分相同和不同?
如:A.txt:125586aaabbbccc
B.txt:1255aaaddd
这两个文本比较应该输出什么呢?
③ python内两个CSV文件数据比较。。。求大神解答!!
t=open('gzb.csv').readlines()
d=[[int(x)forxiny.split(',')]foryint[1:]]
t1=open('gzb1.csv').readlines()[1:]
d1=[[int(x)forxiny.split(',')[:-1]]foryint1]
o=[t1[i][-2]ifd1[i][1]-1<=d[i][1]<=d1[i][1]+1andd1[i][2]-1<=d[i][2]<=d1[i][2]+1else''foriinrange(len(t1))]
open('out.csv','w').writelines([t[0]]+[t[i+1].strip()+o[i]+' 'foriinrange(len(t)-1)])
我想问题中应该是闭区间,你给的是开区间,我按闭区间写
④ python文本对比
这个是因为,你少了一个break 。可以这么理解:因为咱是按行跟行比较的,第一层循环取第一行,第二层循环,取第一行比较,不管比较的结果如何,这两个FOR都必须往下走到下一行。但是你的程序,如果相等,就跳出,比较下一行,如果不相等,继续用第一个FOR的值,跟第二个FOR的下一个值比较。简单说,就是 当不相等的时候,一直用第一个FOR的值,跟第二个FOR的所有值比较,比较完才跳出循环。
if linea!=lineb:
n=n+1
print "在第%d行不一致" %(row)
print "123 is %s" %(linea)
print "122 is %s" %(lineb)
break
else:
break
⑤ python 从文件读数并比较大小
file_a = open("a.txt")
file_b = open("b.txt", 'w')
comp_num = 10 # 此为固定数
num = file_a.readline()[: -1]
while num:
if float(num) > comp_num:
file_b.write(num + ' -1\n')
else:
file_b.write(num + ' 1\n')
num = filea.readline()[: -1]
file_a.close()
file_b.close()
⑥ 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