支离疏哈哈哈 发表于 2020-5-16 14:26:56

零基础入门学python第30课 关于记事本的格式问题

UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 4: illegal multibyte sequence

就是小甲鱼和小客服对话的那个TXT文件,我把里面的内容 用ctrl+c和ctrl+v 弄到另一个文本文件里,按照他视频里的内容打代码出现了上面的错误,该怎么decode

liuzhengyuan 发表于 2020-5-16 14:30:36

本帖最后由 liuzhengyuan 于 2020-5-16 14:35 编辑

打开文件时换一个 encoding?

支离疏哈哈哈 发表于 2020-5-16 14:33:10

liuzhengyuan 发表于 2020-5-16 14:30
打开文件时换一个 ecording?

f=open('record(xiaojiayu).txt')
f=f.ecording()

AttributeError: '_io.TextIOWrapper' object has no attribute 'ecording'

liuzhengyuan 发表于 2020-5-16 14:35:34

本帖最后由 liuzhengyuan 于 2020-5-16 14:43 编辑

支离疏哈哈哈 发表于 2020-5-16 14:33
f=open('record(xiaojiayu).txt')
f=f.ecording()



f1 = open('D:/demo.txt', ecoding="utf-8")

支离疏哈哈哈 发表于 2020-5-16 14:41:49

liuzhengyuan 发表于 2020-5-16 14:35


f=open('record(xiaojiayu).txt',encoding="utf-8")

ValueError: not enough values to unpack (expected 2, got 1)

支离疏哈哈哈 发表于 2020-5-16 14:47:51

系统说这是GBK码,那我要转换成什么码啊,怎么转换

liuzhengyuan 发表于 2020-5-16 14:49:24

支离疏哈哈哈 发表于 2020-5-16 14:47
系统说这是GBK码,那我要转换成什么码啊,怎么转换

encoding = "gbk"???
是不是是文件名的问题?

支离疏哈哈哈 发表于 2020-5-16 14:51:21

liuzhengyuan 发表于 2020-5-16 14:49
encoding = "gbk"???
是不是是文件名的问题?

UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 4: illegal multibyte sequence

摸不着头脑{:10_284:}

支离疏哈哈哈 发表于 2020-5-16 14:52:28

支离疏哈哈哈 发表于 2020-5-16 14:51
UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 4: illegal multibyte sequence
...

不是吧,我都能正常打开关闭文件

qiuyouzhi 发表于 2020-5-16 14:52:46

支离疏哈哈哈 发表于 2020-5-16 14:51
UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 4: illegal multibyte sequence
...

文件内容发出来

支离疏哈哈哈 发表于 2020-5-16 14:55:00

qiuyouzhi 发表于 2020-5-16 14:52
文件内容发出来

小客服:小甲鱼,今天有客户问你有没有女朋友?
小甲鱼:咦??
小客服:我跟她说你有女朋友了!
小甲鱼:。。。。。。
小客服:她让你分手后考虑下她!然后我说:"您要买个优盘,我就帮您留意下~"
小甲鱼:然后呢?
小客服:她买了两个,说发一个货就好~
小甲鱼:呃。。。。。。你真牛!
小客服:那是,谁让我是鱼C最可爱小客服嘛~
小甲鱼:下次有人想调戏你我不阻止~
小客服:滚!!!
================================================================================
小客服:小甲鱼,有个好评很好笑哈。
小甲鱼:哦?
小客服:"有了小甲鱼,以后妈妈再也不用担心我的学习了~"
小甲鱼:哈哈哈,我看到丫,我还发微博了呢~
小客服:嗯嗯,我看了你的微博丫~
小甲鱼:哟西~
小客服:那个有条回复“左手拿著小甲魚,右手拿著打火機,哪裡不會點哪裡,so easy ^_^”
小甲鱼:T_T
================================================================================
小客服:小甲鱼,今天一个会员想找你
小甲鱼:哦?什么事?
小客服:他说你一个学生月薪已经超过12k了!!
小甲鱼:哪里的?
小客服:上海的
小甲鱼:那正常,哪家公司?
小客服:他没说呀。
小甲鱼:哦
小客服:老大,为什么我工资那么低啊??是时候涨涨工资了!!
小甲鱼:啊,你说什么?我在外边呢,这里好吵吖。。。。。。
小客服:滚!!!

支离疏哈哈哈 发表于 2020-5-16 14:55:32

本帖最后由 支离疏哈哈哈 于 2020-5-16 14:57 编辑

qiuyouzhi 发表于 2020-5-16 14:52
文件内容发出来

嘤嘤

Twilight6 发表于 2020-5-16 14:57:19

支离疏哈哈哈 发表于 2020-5-16 14:55
我回复里添加不了附件啊。。我换一贴好了

把open那边代码改成这样
open('record(xiaojiayu).txt',encoding='utf-8')

即可

支离疏哈哈哈 发表于 2020-5-16 14:58:06

Twilight6 发表于 2020-5-16 14:57
把open那边代码改成这样

即可

试过了,你看看前面的帖子

qiuyouzhi 发表于 2020-5-16 14:58:37

支离疏哈哈哈 发表于 2020-5-16 14:55
小客服:小甲鱼,今天有客户问你有没有女朋友?
小甲鱼:咦??
小客服:我跟她说你有女朋友了!


我这里读取没有问题?
你是只有那一行代码还是?

Twilight6 发表于 2020-5-16 14:59:01

支离疏哈哈哈 发表于 2020-5-16 14:58
试过了,你看看前面的帖子

噢噢 刚刚看到了 ,那你把文件名改成
record.txt
然后再改open
open('record.txt',encoding='utf-8')

试试吧

支离疏哈哈哈 发表于 2020-5-16 15:00:18

qiuyouzhi 发表于 2020-5-16 14:58
我这里读取没有问题?
你是只有那一行代码还是?

f=open('record(xiaojiayu).txt')



boy=[]
girl=[]
count=1
for each_line in f:
    if each_line[:3]!=['==='] :
      (role,line_spoken)=each_line.split(':',1)
      if role == '小甲鱼':
            boy.append(line_spoken)
      if role == '小客服':
            girl.append(line_spoken)
    else : #save doc
      file_name_b='boy_'+str(count)+'.txt'
      file_name_g='girl_'+str(count)+'.txt'
      boy_file=open(file_name_b,'w')
      girl_file=open(file_name_g,'w')

      boy_file.writelines(boy)#写入一个序列
      girl_file.writelines(girl)
      boy_file.close()
      girl_file.close()

      boy=[]
      girl=[]
      count+=1
f.close()
   

我是看着小甲鱼第30课的视频打的

qiuyouzhi 发表于 2020-5-16 15:01:17

支离疏哈哈哈 发表于 2020-5-16 15:00
我是看着小甲鱼第30课的视频打的

第九行判断的为啥是列表??
我想你没有理解切片,把==后面的
中括号去掉

支离疏哈哈哈 发表于 2020-5-16 15:03:41

Twilight6 发表于 2020-5-16 14:59
噢噢 刚刚看到了 ,那你把文件名改成

然后再改open


f=open('record.txt',encoding='utf-8')
ValueError: not enough values to unpack (expected 2, got 1)

改了,一样的结果

Twilight6 发表于 2020-5-16 15:04:18

支离疏哈哈哈 发表于 2020-5-16 15:03
f=open('record.txt',encoding='utf-8')
ValueError: not enough values to unpack (expected 2, got 1) ...

支持楼上把中括号去
页: [1] 2
查看完整版本: 零基础入门学python第30课 关于记事本的格式问题