Khi cần triển khai một ngăn xếp (stack) bằng Python, ta tạo một lớp stack và một thể hiện của lớp này. Các phương thức push (thêm), pop (xóa) được định nghĩa và thể hiện được dùng để gọi các phương thức này.
Ví dụ
class Stack_struct:
def __init__(self):
self.items = []
def check_empty(self):
return self.items == []
def add_elements(self, my_data):
self.items.append(my_data)
def delete_elements(self):
return self.items.pop()
my_instance = Stack_struct()
while True:
print('Push ')
print('Pop')
print('Quit')
my_input = input('Thao tác bạn muốn thực hiện? ').split()
my_op = my_input[0].strip().lower()
if my_op == 'push':
my_instance.add_elements(int(my_input[1]))
elif my_op == 'pop':
if my_instance.check_empty():
print('Ngăn xếp rỗng')
else:
print('Giá trị đã xóa:', my_instance.delete_elements())
elif my_op == 'quit':
break
Kết quả
PushPop Quit Thao tác bạn muốn thực hiện? Push 6 Push Pop Quit Thao tác bạn muốn thực hiện? Psuh 8 Push Pop Quit Thao tác bạn muốn thực hiện? Psuh 34 Push Pop Quit Thao tác bạn muốn thực hiện? Pop Giá trị đã xóa: 6 Push Pop Quit
Giải thích
Lớp
Stack_structvới các thuộc tính cần thiết được tạo.Phương thức
__init__khởi tạo danh sách rỗng.Phương thức
check_emptykiểm tra danh sách rỗng.Phương thức
add_elementsthêm phần tử vào danh sách.Phương thức
delete_elementsxóa phần tử khỏi danh sách.Một đối tượng của lớp
Stack_structđược tạo.Nhập lựa chọn thao tác từ người dùng.
Thực hiện thao tác tương ứng.
Hiển thị kết quả ra bảng điều khiển.