新人求上岸 发表于 2021-7-19 21:11:21

自己打的文本能作为文件输入吗

本帖最后由 新人求上岸 于 2021-7-19 21:27 编辑

课后作业29 我自己写了一个文本做文件输入 但是无论怎么改都显示'gbk' codec can't decode byte 0xa6 in position 23: illegal multibyte sequence 是什么情况 而且用小甲鱼的代码也不行

青出于蓝 发表于 2021-7-19 21:23:40

发源码

深谙流年 发表于 2021-7-19 21:32:38

用gbk解码看看

新人求上岸 发表于 2021-7-19 21:33:21

青出于蓝 发表于 2021-7-19 21:23
发源码

def file_compare(file1, file2):
    f1 = open(file1)
    f2 = open(file2)
    count = 0 # 统计行数
    differ = [] # 统计不一样的数量

    for line1 in f1:
      line2 = f2.readline()
      count += 1
      if line1 != line2:
            differ.append(count)

    f1.close()
    f2.close()
    return differ

file1 = input('请输入需要比较的头一个文件名:')
file2 = input('请输入需要比较的另一个文件名:')

differ = file_compare(file1, file2)

if len(differ) == 0:
    print('两个文件完全一样!')
else:
    print('两个文件共有【%d】处不同:' % len(differ))
    for each in differ:
      print('第 %d 行不一样' % each)

文件是我自己写的文本

wp231957 发表于 2021-7-19 21:52:43

新人求上岸 发表于 2021-7-19 21:33
文件是我自己写的文本

f1 = open(file1)
    f2 = open(file2)
在打开文件时要指定正确的编码

suchocolate 发表于 2021-7-19 21:52:53

    f1 = open(file1, encoding='utf-8')
    f2 = open(file2, encoding='utf-8')

新人求上岸 发表于 2021-7-20 21:11:50

suchocolate 发表于 2021-7-19 21:52


谢谢 问题解决了
页: [1]
查看完整版本: 自己打的文本能作为文件输入吗