題目要求
棧的工作原理
入棧 append
出棧 pop
棧頂元素
棧的長度 len
棧是否爲空 len == 0
代碼
注意:
- 可以先搭建好框架,即while循環與if條件語句
- choice == '1’時,一定要加上引號
- 出棧判斷,先判斷是否爲空。if語句後檢測的是bool值,可直接寫
if stack:
。當stack爲空時,條件不成立,完成else後的命令內容。 - 棧頂元素應該是列表最後一個元素
stack = []
info = """ 棧操作
1.入棧
2.出棧
3.棧頂元素
4.棧的長度
5.棧是否爲空"""
while True:
print(info) #打印info讓用戶自己選擇
choice = input('Please input your choice: ')
if choice == '1':
item = input('請輸入入棧元素: ')
stack.append(item)
print('%s入棧成功' %item)
elif choice == '2':
if stack:
item = stack.pop() # stack有值時,進行彈出
print('%s出棧成功!' %item)
else:
print('棧爲空,不能出棧')
elif choice == '3':
if len(stack) == 0: #另一種檢驗棧是否爲空的方式
print('棧爲空,不能出棧')
else:
print('棧頂元素 is %s' %stack[-1])
elif choice == '4':
print('棧的長度 is %s' %(len(stack)))
elif choice == '5':
if len(stack) == 0:
print('棧爲空')
else:
print('棧不爲空')
elif choice == 'q':
print('logout')
break
else:
print('Please check your input!')
結果展示
- 入棧+棧頂元素
- 棧頂長度+是否爲空
- 出棧+退出測試