python第29讲
>>> for each in f:(name, saying) = each.split(':')
Traceback (most recent call last):
File "<pyshell#5>", line 2, in <module>
(name, saying) = each.split(':')
ValueError: need more than 1 value to unpack
为什么会报错啊,有没有大佬救命 参数不够分,说白了就是再each里没有找到冒号 检查你的对话文本是否存在中文:
可能肉眼看不出来,些许差别就会出错的 wp231957 发表于 2021-4-21 19:41
参数不够分,说白了就是再each里没有找到冒号
我懂了,谢谢 你这样写 each 里 根据 ‘:’ 来分割,
得到的字符,会 要么1个,要么2个,3个,到N个,
左边则只有两个变量要赋值,除非你右边 each.split(':') 刚好分割出2个,不然,都会报错,要么多了,要么少了。
如果你只需要分割后的前两个,更通用更容错的写法是:
a, b, *_ = '1 2 3 4 567'.split() 阿奇_o 发表于 2021-4-21 19:57
你这样写 each 里 根据 ‘:’ 来分割,
得到的字符,会 要么1个,要么2个,3个,到N个,
左边则只有两个 ...
去试了一下,确实可以,学到了,谢谢大佬
页:
[1]