鱼C论坛

 找回密码
 立即注册
楼主: liuchao2472

[已解决]关于 not enough values to unpack (expected 2, got 1) 这个的错误

[复制链接]
发表于 2018-12-1 19:53:00 | 显示全部楼层
医疗兵杰瑞 发表于 2018-8-20 19:55
来自B站小甲鱼粉丝   
我是这样解决的,由于split返回值是一个列表,
我先把role去了,然后让line_spoken ...

这位说的没错,我也是这个问题,\n太多了,按照这个方式可以了。非常感谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-12-2 18:01:42 | 显示全部楼层
方法都试过还是报错的可以检查下我说的,文档中有双引号的引用,把双引号去掉就好了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-12-10 15:24:50 | 显示全部楼层
luky 发表于 2017-10-25 14:48
有问题的同学还要注意下面的代码
【if each_line[:6] != '======':】
其中[:6]是截取一行中的前六个字符 ...

报错原因就是这里,好尴尬,找了好久
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-12-10 15:54:02 | 显示全部楼层
luky 发表于 2017-10-25 14:48
有问题的同学还要注意下面的代码
【if each_line[:6] != '======':】
其中[:6]是截取一行中的前六个字符 ...

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

使用道具 举报

发表于 2018-12-17 21:11:50 | 显示全部楼层
学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-1-12 02:56:11 | 显示全部楼层
wqamy 发表于 2018-3-6 11:21
方法都试了,还是有错,要疯了

你好,请问你的问题解决了吗,我的各种提到的问题都修改了,还是有问题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-13 21:19:27 | 显示全部楼层
小木目心 发表于 2017-10-15 21:24
加个换行符
each_line = each_line.strip('\n')

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

使用道具 举报

发表于 2019-1-23 19:42:29 | 显示全部楼层

我也一致报错啥原因不知道
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-23 19:47:22 | 显示全部楼层
outmanlol 发表于 2017-11-15 21:47
14楼说到点上了,我就是用的if each_line[:6] != '==='错的。老师给的文件本身没有问题。

我改了也没有对,另外请问老师的源代码必须要付费的吗?我买书了怎么获取呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-18 09:36:21 | 显示全部楼层
遵照上面的方法进行了修改,还是行不通
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-3-24 15:35:25 | 显示全部楼层
wqamy 发表于 2018-3-6 11:21
方法都试了,还是有错,要疯了

冒号与字之间不能有空格,行与行之间不能有间隔,注意冒号的中英文,我是今天改了半天才可以的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-4-6 12:02:18 | 显示全部楼层
luky 发表于 2017-10-25 14:48
有问题的同学还要注意下面的代码
【if each_line[:6] != '======':】
其中[:6]是截取一行中的前六个字符 ...

谢谢你,我就是犯了这个错误。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-2 01:15:13 | 显示全部楼层
我也是,最后查出来是   if each_line[:6] != '======':  #对每行前6个切片           必须是6个======才行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-5 16:18:04 | 显示全部楼层
医疗兵杰瑞 发表于 2018-8-20 19:55
来自B站小甲鱼粉丝   
我是这样解决的,由于split返回值是一个列表,
我先把role去了,然后让line_spoken ...

这层楼救了我。。。改了好久没找出问题,复制到word之后发现有很多空行,减掉就好了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-30 10:15:17 | 显示全部楼层
感谢感谢!的确是中英文的问题,现在已经得到解决了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-10-23 00:43:35 | 显示全部楼层
感谢上面的大佬,我自己的也改成功了,来分享一下自己的经验:
1.导入的TXT也仅仅相当于个列表吧,其中每行代表一个字符串,那么以单个字符串为例,发现a.split(':',1),中分隔符:主要和字符串中a的冒号保持一致(要么都是英文半角,要么都是中文的),那么就可以成功了,下面用了个小例子验证了下
a = '小甲鱼说:让编程改变世界'
( role, words ) = a.split(':',1)
print(role)
print(words)
运行正常,其中:都是中文的
2.如果字符串a中没有a.split(':',1)里面的冒号,那么也就会出现错误ValueError: not enough values to unpack (expected 2, got 1)
14#正解
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-18 21:13:21 | 显示全部楼层
把文件里的中文“:”改成英文的":"就可以了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-15 08:37:41 | 显示全部楼层
哥哥们,我知道问题了。有些人是因为最后一行有换行符,去掉就可以了!!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-15 08:39:43 | 显示全部楼层
wqamy 发表于 2018-3-6 11:21
方法都试了,还是有错,要疯了

最后一行换行符去掉
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-17 14:25:05 | 显示全部楼层
luky 发表于 2017-10-25 14:48
有问题的同学还要注意下面的代码
【if each_line[:6] != '======':】
其中[:6]是截取一行中的前六个字符 ...

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-26 11:52

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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