Yığın, üst üste konmuş tabaklar gibidir: yalnızca en üste koyar, yalnızca en üstten alırsın. Python'da ayrı bir tür gerekmez; liste yeter: append üste koyar, pop üsttekini alır, stack[-1] üsttekine bakar.
PAIR = {")": "(", "]": "["}stack = []for ch in text:if ch in "([":stack.append(ch)elif not stack or stack.pop() != PAIR[ch]:return Falsereturn not stack
Yığına ne zaman ihtiyacın olduğunu şuradan anlarsın: bir şeyi sonra halletmek üzere kenara koyuyorsun ve en son koyduğun, ilk halletmen gereken oluyor. İç içe yapılar (parantezler, klasörler, fonksiyon çağrıları) hep böyledir.