使用python从列表中获取元素并将其放入堆栈中
这就是我现在所拥有的,并且说当它试图推我的时候,它缺少了一个参数 这是我为这段代码准备的类使用python从列表中获取元素并将其放入堆栈中,python,list,stack,Python,List,Stack,这就是我现在所拥有的,并且说当它试图推我的时候,它缺少了一个参数 这是我为这段代码准备的类 class ArrayStack: def __init__(self): self._data = [] def __len__(self): return len(self._data) def is_empty(self): return len(self._data) == 0 def push(self, a): self._data.append(a)
class ArrayStack:
def __init__(self):
self._data = []
def __len__(self):
return len(self._data)
def is_empty(self):
return len(self._data) == 0
def push(self, a):
self._data.append(a)
def top(self):
if self.is_empty():
raise Empty('Stack is empty')
return self._data[-1]
def pop(self):
if self.is_empty():
raise Empty('Stack is empty')
return self._data.pop()
def reverselist():
expression = input("Enter whatever: ")
stacks = ArrayStack
listofstuff = []
for item in expression:
listofstuff.append(item)
print(listofstuff)
for token in listofstuff:
i = str(token)
stacks.push(i)
您需要的是
ArrayStack
的实例,而不是类本身,更改为ArrayStack()
,这将调用类的构造函数
def reverselist():
expression = input("Enter whatever: ")
stacks = ArrayStack()
listofstuff = []
for item in expression:
listofstuff.append(item)
print(listofstuff)
for token in listofstuff:
i = str(token)
stacks.push(i)
你从哪里带ArrayStack,是图书馆吗?。我使用
append
类ArrayStack:def\uu init\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu数据=[]def\uuuuuu len\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu(self):return len(self.\udata)def为空(self):return len len(self.\uu data)==0 def push(self)推送(返回self._data[-1]定义pop(self):如果self.is_empty():raise empty('Stack is empty')返回self._data.pop()