一、问题背景
由于出错时没有保存截图,所以只能给出正确执行状态下的代码了(代码没改过...)。
当我在jupyter lab中测试Path().iterdir()的返回值时,语句【list(pathlib.Path(TEST_DIR).iterdir())】的位置,出现了这个错误。
百度以后,我找到了一个质量很高的英文网页,下面总结一下该文章的核心观点。
出现该错误的原因大致有2种:
1.在一个列表中包括有元组,元组与元组之间如果忘记加逗号。
2.对一个元组用了错误的索引方式,本来该用[],但是用了();而这个和函数调用的()类似。
二、解决思路
我根据上面的两个原因,再去查看我的代码,发现找不到任何错误。
.............辗转悱恻!痛苦啊!!!内耗一个小时....
最关键的时刻来了!我在自己的主程序中测试这段代码没有问题;突然灵感触发,是不是jupyer lab的变量问题,因为我已经在这个文件中测试了很多代码,当时已经有70多个输入单元格被执行了;于是我重启了自己的内核,然后重新运行那串代码,没出错了。