文件课后习题
count = 0 #计算第几行lines = [] #记录行数不同
first = input('请输入需要比较的头一个文件名:')
second = input('请输入需要比较的第二个个文件名:')
first_file = open(first,'r')
second_file = open(second,'r')
for i in first_file:
count += 1 #计算行数,开始即为第一行
two = second_file.readline()
if i != two:
lines.append(count)
if len(lines) >=1:
print('两个文件共有%d处不同:' % len(lines))
for each_num in lines:
print("第%d行不一样!"%each_num)
else:
print('两个文件内容一样')
first_file.close()
second_file.close()
错误报告
Traceback (most recent call last):
File "F:\python作业库\文件\课后习题.py", line 11, in <module>
for i in first_file:
UnicodeDecodeError: 'gbk' codec can't decode byte 0xa0 in position 8: illegal multibyte sequence
encoding改成utf8也不对,不知道哪里错了 encoding 改成 gbk 试试 是改成 utf-8 不是 utf8 python爱好者. 发表于 2022-1-22 09:30
是改成 utf-8 不是 utf8
utf8和utf-8是一样的 isdkz 发表于 2022-1-22 17:16
utf8和utf-8是一样的
所以你知道我哪错了吗 Tihool 发表于 2022-1-22 21:46
所以你知道我哪错了吗
括号有问题把它换成英文的括号")" count = 0 #计算第几行
lines = [] #记录行数不同
first = input('请输入需要比较的头一个文件名:')
second = input('请输入需要比较的第二个个文件名:')
first_file = open(first,'r',encoding = 'utf8')
second_file = open(second,'r',encoding = 'utf8')
for i in first_file:
count += 1 #计算行数,开始即为第一行
two = second_file.readline()
if i != two:
lines.append(count)
if len(lines) >=1:
print('两个文件共有%d处不同:' % len(lines))
for each_num in lines:
print("第%d行不一样!"%each_num)
else:
print('两个文件内容一样')
first_file.close()
second_file.close()
jhq999 发表于 2022-1-22 22:54
括号有问题把它换成英文的括号")"
不对 叼辣条闯世界 发表于 2022-1-23 18:45
说了utf8不对,你能运行吗 Tihool 发表于 2022-1-23 20:34
说了utf8不对,你能运行吗
我刚才复制去试了下是可以运行的 Tihool 发表于 2022-1-23 20:33
不对
我这里改掉括号后是可以运行的,要不楼主再检查下?而且一般括号不对的话会有标红提示的
页:
[1]