比较两个.py脚本的差别
问题:
- 如何显示两个python脚本的差别
# fib_version_1.py
def fib(n):
if n <= 1:
return n, 1
else:
a, b = fib(n-1)
return a+b, a
def print_fib(n):
for i in range(n):
print(fib(i))
print_fib(10)
# fib_version_2.py
def fib(n):
if n <= 1:
return 1
else:
result = fib(n-1) + fib(n-2)
return result
for i in range(10):
print(fib(i))
解决方法:
- 内置的
difflib
模块,很多相关类及函数,如:HtmlDiff()类
import difflib
file_1=open('fib_version_1.py','r',encoding='utf-8').readlines()
file_2=open('fib_version_2.py','r',encoding='utf-8').readlines()
d=difflib.HtmlDiff()
results=d.make_file(file_1,file_2) # 返回HTML形式的比较字符串
with open('results.html','w') as file:
file.write(results) # 将比较结果保存在results.html文件中
结果:
打开结果results.html
文件: