|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
刚才发了问题后手贱点了个已解决,请允许在发一次
这段代码总是得不到正确的结果,而下面小甲鱼老师的方法可行,为什么啊?
我的代码:
- def file_compare(file_name1, file_name2):
- list1 = []
- count = 0
- fp1 = open(file_name1)
- fp2 = open(file_name2)
- while True:
- count += 1
- line1 = fp1.readline()
- line2 = fp2.readline()
- if line1 != line2:
- print(line1+ '+' +line2+ '+%d' %count)
- list1.append(count)
- elif (fp1.readline() == '') and (fp2.readline() == ''):
- break
-
- fp1.close()
- fp2.close()
- return list1
-
-
- file_name1 = input('输入一个文件名:')
- file_name2 = input('输入另一个文件名:')
- list_out = file_compare(file_name1, file_name2)
- if len(list_out) == 0:
- print('相同')
- else:
- for each in list_out:
- print('第%d行不同' % each)
复制代码
小甲鱼老师方法:
- def file_compare(file_name1, file_name2):
- list1 = []
- count = 0
- fp1 = open(file_name1)
- fp2 = open(file_name2)
- for line1 in fp1:
- line2 = fp2.readline()
- count += 1
- if line1 != line2:
- print(line1+ '+' +line2+ '+%d' %count)
- list1.append(count)
-
- fp1.close()
- fp2.close()
- return list1
-
-
- file_name1 = input('输入一个文件名:')
- file_name2 = input('输入另一个文件名:')
- list_out = file_compare(file_name1, file_name2)
- if len(list_out) == 0:
- print('相同')
- else:
- for each in list_out:
- print('第%d行不同' % each)
复制代码
|
|