Я пытаюсь внедрить простую структуру данных стека в Python. Вот мой код: < /p>
class Stack:
def __init__(self):
self.items = []
def push(self, item):
self.items.append(item)
def pop(self):
if len(self.items) == 0:
return None
return self.items.pop()
def is_empty(self):
return len(self.items) == 0
def peek(self):
if len(self.items) == 0:
return None
return self.items[-1]
< /code>
Однако, когда я тестирую этот стек, я столкнулся с странной проблемой. Когда стек пуст, вызов метода POP возвращает ни одного, как и ожидалось. Но затем, когда я вталкиваю элемент в стек, метод POP по -прежнему думает, что стек пуст, хотя в нем есть элемент. Например: < /p>
s = Stack()
print(s.pop()) # Outputs None, as expected
s.push(10)
print(s.pop()) # Expected to output 10, but actually outputs None again
< /code>
Я проверил логику кода, и кажется, что после того, как метод POP не возвращает нет, когда стек пуст, последующее суждение состояния стека идет не так. Кто -нибудь может помочь мне указать на ошибку в моем коде или предоставить некоторые идеи отладки? Большое спасибо! Однако, выпав из пустого стека, а затем нажав элемент, метод POP по -прежнему не возвращал ни одного вместо нажатого значения.
Подробнее здесь: https://stackoverflow.com/questions/795 ... nted-stack
Странное поведение метода POP в Python - реализованный стек [закрыто] ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как получить возвращаемое значение при использовании метода pop() в Python? [закрыто]
Anonymous » » в форуме Python - 0 Ответы
- 9 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как получить возвращаемое значение при использовании метода pop() в Python? [закрыто]
Anonymous » » в форуме Python - 0 Ответы
- 6 Просмотры
-
Последнее сообщение Anonymous
-
-
-
«Окно не определено», но стек выглядит неверно; Как получить точный стек вызовов?
Anonymous » » в форуме Javascript - 0 Ответы
- 12 Просмотры
-
Последнее сообщение Anonymous
-