遇到这种Bug多半是传参错误,请检查
""" One possible example """
with open(path, 'r') as f:
...
中的path是否真的是路径字符串而不是其他值。
下述代码可触发这种Bug
def read_lines(path='./1.txt', second_param=True):
with open(path, 'r') as f:
lines = f.readlines()
return lines
second_param = False
lines = read_lines(second_param)
print(lines)
这是因为 second_param
的值会传递到 path
中,我们应当尽量避免这种不规范的写法。
正确写法为
lines = read_lines(second_param=second_param)