出于某种原因,我无法使用isinstance()来处理Python 2.7.2
def print_lol(the_list, indent=False, level=0):
for item in the_list:
if isinstance(item, list):
print_lol(item, indent, level+1)
else:
print(item)
Run Code Online (Sandbox Code Playgroud)
当我编译并运行它时:
>>> list = ["q", "w", ["D", ["E", "I"]]]
>>> print_lol(list)
Run Code Online (Sandbox Code Playgroud)
我收到错误消息:
if isinstance(item, list):
TypeError: isinstance() arg 2 must be a class, type, or tuple of classes and types
Run Code Online (Sandbox Code Playgroud)
我在做什么?
你已经命名了你的变量list:
>>> list = ["q", "w", ["D", ["E", "I"]]]
Run Code Online (Sandbox Code Playgroud)
这是隐藏内置的list.
重命名变量后,重新启动Python(或IDE).既然你list是一个全局变量,它会坚持不懈.