|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
1. 编写一个程序,比较用户输入的两个文件,如果不同,显示出所有不同处的行号与第一个不同字符的位置
def file_compare(file1, file2):
f1 = open(file1)
f2 = open(file2)
count = 0 # 统计行数
differ = [] # 统计不一样的数量
for line1 in f1:
line2 = f2.readline() #这一部分的f2的readline 如何能保证和f1的同步变化,或者说f2的行数指针是如何迭代的?
count += 1
if line1 != line2:
differ.append(count)
f1.close()
f2.close()
return differ
- for line1 in f1: #第一次循环line1读取f1第一行
- line2 = f2.readline() #readline()方法一次读取一行,因此这里line2读取的是f2第一行,并且指针位置移动到了第二行
- count += 1
- if line1 != line2: #当f1第一行等于f2第一行
- differ.append(count) # differ添加count元素
-
- #第二次循环line1读取f1第二行
- #readline()方法一次读取一行,第一次读取时,指针指向了第二行,因此这里line2读取的是f2第二行
- #一直循环下去直到全部读取完
复制代码
|
|