Q:

What makes a stack True?

Basically, as the title entails - what makes a stack true?
1. stack = []
2. print(not stack)
True
3. stack.append(1)
4. print(not stack)
False
5. stack.append(2)
6. stack.append(3)
7. print(not stack)
False

Continue adding elements...
From the code, I realized that an empty stack will return True and a stack with elements will return False. Is that true? If not, please explain how stacks are true or false, also, will that logic follow queues, dictionaries, sets ....?

A:

If there are elements inside the stack, it will return True when asked if it is True or not.
On the examples you gave you're asking the opposite,
not stack

which will return True whenever the stack does not have any element, and False when it has elements inside.

