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' 클래스의 객체가 생성됩니다.
-
수행해야 하는 작업에 대해 사용자 입력을 받습니다.
-
사용자의 선택에 따라 작업이 수행됩니다.
-
관련 출력이 콘솔에 표시됩니다.