The problem here is in your conditional
while len(lists) is True:
is
checks for identity, not equality.
[1, 2, 3] == [1, 2, 3] # True
[1, 2, 3] is [1, 2, 3] # False, they are two distinct (but equivalent) lists.
However even equality would be incorrect here, since
42 == True # False
2 == True # False
any_nonzero == True # False
# notably 1 == True
# and 0 == False
# but still (1 is True) == False!
You can coerce an integer into a boolean
bool(42) == True # True
bool(2) == True # True
bool(any_nonzero) == True # True
But it’s usually better to just leave the coercion to Python
while lists:
lists.pop()
# or more simply:
# lists = []
4
solved why this code doesn’t work i am using python3?