Python的学习过程中not enough values to unpack (expected 2, got 1)解决方案

本文记录了在跟随小甲鱼学习Python过程中遇到的文件读取与解析问题,特别是针对角色对话分割的代码bug,包括中英文冒号混淆及多余空行导致的错误及其解决方法。

这是一篇在自学过程中debug的笔记。
愿我们一同进步。

问题描述

跟着小甲鱼一起学习Python,在学习到“文件”的时候有一个代码任务,内容是根据两个人物之间的三段对话对话进行分割提取操作。运行时报错,主要报错为not enough values to unpack (expected 2, got 1)。

(role,line_spoken) = each_line.split(':',1)  #以问号分隔,1代表分割
ValueError: not enough values to unpack (expected 2, got 1)

没有足够的值解压,预期两个值,实际得到了一个值。

出错原因及解决方案

  1. 中英文符号混淆报错。出现这一条报错命令,很可能是由于split命令中的冒号打错,中文的冒号形如:,而英文的是:,还是有很大的差别的。
    》》查看自己的TXT文件是中文还是英文的冒号,两者对应即可
  2. 有多余的空行。这一个报错原因还是比较不容易被发现,我一开始就犯了这个错误,由于TXT文档复制而来的时候的默认,是在文档末尾有几行空白行的。
    》》查看光标位置,把空行删除即可
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值