鱼C论坛

 找回密码
 立即注册
查看: 1497|回复: 11

[已解决]求助!!零基础python,一个任务那儿这样子报错是什么原因啊

[复制链接]
发表于 2020-9-27 20:01:26 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
Traceback (most recent call last):
  File "D:/自学python/文件/课堂练习/shishi.py", line 7, in <module>
    for each_line in f:
UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 4: illegal multibyte sequence

就是照着视频里敲的代码,但是就是跑不动
最佳答案
2020-9-27 20:21:32
编码问题,不用utf-8么
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-9-27 20:11:23 | 显示全部楼层
源码发一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-27 20:13:06 | 显示全部楼层
本帖最后由 Zeus213 于 2020-9-27 20:21 编辑

1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-9-27 20:21:32 From FishC Mobile | 显示全部楼层    本楼为最佳答案   
编码问题,不用utf-8么
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-27 20:21:59 | 显示全部楼层

count = 1
boy = []
girl = []

f = open(r"D:\自学python\文件\课堂练习\test.txt")

for each_line in f:
    if each_line[:6] != "======":
        (role, line_spoken) = each_line.split(":",1)
        if role == "小甲鱼":
            boy.append(line_spoken)
        if role == "小客服":
            girl.append(line.spoken)
    else:
        file_name_boy = 'boy' + str(count) + '.txt'
        file_name_girl = 'girl' + str(count) + '.txt'

        boy_file = open(file_name_boy, 'w')
        girl_file = open(file_name_girl, "w")

        boy_file.writelines(boy)
        girl_file.writelines(girl)

        boy = []
        girl = []
        count = count + 1

file_name_boy = 'boy' + str(count) + '.txt'
file_name_girl = 'girl' + str(count) + '.txt'

boy_file = open(file_name_boy, 'w')
girl_file = open(file_name_girl, "w")

boy_file.writelines(boy)
girl_file.writelines(girl)

boy_file.close()
girl_file.close()
f.close()


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-27 20:28:22 | 显示全部楼层
疾风怪盗 发表于 2020-9-27 20:21
编码问题,不用utf-8么

代码在下面
你看吧,我先溜了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-27 20:29:06 | 显示全部楼层
疾风怪盗 发表于 2020-9-27 20:21
编码问题,不用utf-8么

是不是这样:f = open(r"D:\自学python\文件\课堂练习\test.txt",encode = “UTF-8”)
用了之后,又出问题了
Traceback (most recent call last):
  File "D:/自学python/文件/课堂练习/shishi.py", line 9, in <module>
    (role, line_spoken) = each_line.split(":",1)
ValueError: not enough values to unpack (expected 2, got 1)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-27 20:31:02 | 显示全部楼层
巴巴鲁 发表于 2020-9-27 20:28
代码在下面
你看吧,我先溜了


大佬救救新人小白吧,我看了好久不知道该怎么搞
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-27 20:32:49 | 显示全部楼层
Zeus213 发表于 2020-9-27 20:31
大佬救救新人小白吧,我看了好久不知道该怎么搞

我也没学几天,还是小萌新
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-27 20:50:17 From FishC Mobile | 显示全部楼层
Zeus213 发表于 2020-9-27 20:29
是不是这样:f = open(r"D:\自学python\文件\课堂练习\test.txt",encode = “UTF-8”)
用了之后,又出 ...

你这个报错,就不是编码了,很多原因,打印一下循环的元素看看吧,应该是split出错了吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-27 20:58:01 | 显示全部楼层
啊啊啊,问题解决了,原来是txt里的冒号和代码里的冒号不一样,一个是中文冒号,一个是英文里的冒号
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

头像被屏蔽
发表于 2020-9-28 06:52:04 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-18 13:05

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表