字符串操作split的错误不是很明白
for each_line in f:if each_line != '======':
(role,line_spoken) = each_line.split(':',1)
if role == '小甲鱼':
boy.append(line_spoken)
if role == '小客服':
girl.append(line_spoken)
(role,line_spoken) = each_line.split(':',1)
ValueError: not enough values to unpack (expected 2, got 1)
这个是什么错误呢?我非常不理解的是 我的代码和小甲鱼课上的代码一摸一样 但是我这里报错了 这是为啥 本帖最后由 isdkz 于 2022-3-16 19:52 编辑
因为你有一些行并没有英文冒号,所以分割后的列表只有一个元素,
而你左边的元组有两个元素,所以就出错了,你可以加个判断:
for each_line in f:
if each_line != '======' and ':' in each_line: # 这里加个判断
(role,line_spoken) = each_line.split(':',1)
if role == '小甲鱼':
boy.append(line_spoken)
if role == '小客服':
girl.append(line_spoken) 这个提示就是说split取不到 这时十有八九就是你的冒号全角半角整错了
要是不知道啥是全角半角,那只能建议你百度 isdkz 发表于 2022-3-16 19:50
因为你有一些行并没有英文冒号,所以分割后的列表只有一个元素,
而你左边的元组有两个元素,所以就出错 ...
昨天我仔细看了一下这行代码 我已经想挖个洞钻进去了 each_line[:6]这个6前面没有冒号 对不起 我想把帖子删了
页:
[1]