One idea
Stacks and queues are about order. Linked lists are about cheap pointer changes when you already have the node.
If you need random access by index, do not pick a linked list. Use an array or list instead.
When to use stack
Use a stack when the last item seen must be handled first. Think undo, browser back, valid brackets, next greater element, monotonic stack problems, DFS without recursion.
In most languages, use the built-in dynamic array as a stack. In Python, list append and pop at the end are fine.