Python을 사용하여 스택을 구현해야 하는 경우 스택 클래스가 생성되고 이 클래스의 인스턴스가 생성됩니다. 푸시할 메소드, 팝 요소가 정의되고 인스턴스가 이러한 메소드를 호출하는 데 사용됩니다.
아래는 동일한 데모입니다 -
예시
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 <value>')
print('Pop')
print('Quit')
my_input = input('What operation would you like to perform ? ').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('The stack is empty')
else:
print('The deleted value is : ', my_instance.delete_elements())
elif my_op == 'Quit':
break 출력
Push <value> Pop Quit What operation would you like to perform ? Push 6 Push <value> Pop Quit What operation would you like to perform ? Psuh 8 Push <value> Pop Quit What operation would you like to perform ? Psuh 34 Push <value> Pop Quit What operation would you like to perform ? Pop The deleted value is : 6 Push <value> Pop Quit입니다.
설명
-
필수 속성을 가진 'Stack_struct' 클래스가 생성됩니다.
-
빈 목록을 만드는 데 사용되는 '초기화' 기능이 있습니다.
-
'check_empty'라는 또 다른 메서드는 목록이 비어 있는지 확인합니다.
-
빈 목록에 요소를 추가하는 'add_elements'라는 또 다른 메서드가 정의되어 있습니다.
-
목록에서 요소를 삭제하는 'delete_elements'라는 메서드가 정의되어 있습니다.
-
'Stack_struct' 클래스의 객체가 생성됩니다.
-
수행해야 하는 작업에 대해 사용자 입력을 받습니다.
-
사용자의 선택에 따라 작업이 수행됩니다.
-
관련 출력이 콘솔에 표시됩니다.