各位大大好,小弟最近才刚接触python
在O'Reilly的python 深入浅出的例外,额外处理的章节中,
他给了一段solution
=================================
data.open('sketch.txt')
for each_line in data:
if not each_line.find(':') == -1:
(role, line_spoken) = each_line.split(':',1)
print(role, end='')
print('said', end='')
print(line_spoken, end='')
data.close()
=================================
原本是没有加上if statement,但会碰上ValueError: not enough values to unpack
sketch.txt里面有一行刚好有2个以上的“:”,
小弟不懂得也是这个if statement
为什么加上这个if 就可以解决ValueError的问题?
这if的意思不是:
如果没有在each_line中找不到':'的话,就继续下面的code,
也就代表找到':',就会执行接下来的assign 跟 split?
这样还是会碰到not enough values不是吗?
这是我的疑问
先谢谢各位