목차
- 파이썬 사용자에게 입력받기 input 예제 이전 포스팅
- 파이썬 문자열 및 정수 출력 print 예제 이전 포스팅
- 파이썬 스택 만들기 예제
- 파이썬 사용자에게 정수 입력받아 스택에 push 예제
- 파이썬 현재 스택에 저장된 마지막 값 pop 예제
- 파이썬 스택 아이템 전체 출력 예제
파이썬 사용자에게 입력받기 input 예제 이전 포스팅
오늘 포스팅에서 다룰 주제는 파이썬으로 스택(stack) 구현하기 입니다. 스택은 FILO 의 대표적인 자료구조 입니다. 제일 먼저 들어간 아이템은 제일 마지막에 출력됩니다. 이러한 구조를 First-In-Last-Out(FILO) 구조라고 합니다.
이와 반대되는 자료구조는 큐가 있습니다. 오늘 이러한 예제를 직접 구성하고 실행해보기 위해서는 아이템을 추가하고 뺄 수 있도록 사용자에게 입력을 받아야합니다. 이를 위해서는 파이썬의 입력 함수인 input에 대해 알아야합니다.
만약 아직 input 함수에 대해 사용법을 모르신다면 아래의 이전 포스팅 링크를 참고하여 학습해주세요.
2023.08.18 - [Python] - [Python] 파이썬 사용자에게 입력받기 예제(input)
파이썬 문자열 및 정수 출력 print 예제 이전 포스팅
스택에 저장된 아이템들을 모두 출력하고 실제 아이템이 추가되었는지 출력되었는지 확인하기위해서는 print 함수로 출력을 해봐야합니다.
따라서 문자열 포멧 출력 함수인 print에 대해 아직 잘 모르신다면 아래의 이전 포스팅을 참고하여 학습해주세요.
2023.08.08 - [Python/os] - [Python] print 문자열 포멧으로 출력 예제(정수형, 문자열)
파이썬 스택 만들기 예제
아래는 파이썬 코드로 스택을 구현한 예제입니다. 전역변수의 스택에 아이템을 push하고 pop하는 함수를 추가하는 예제입니다.
stack = []
def push(value):
stack.append(value)
print(f"Pushed {value} into the stack.")
def pop():
if not stack:
print("Stack is empty. Cannot pop.")
else:
value = stack.pop()
print(f"Popped {value} from the stack.")
파이썬 사용자에게 정수 입력받아 스택에 push 예제
아래는 사용자에게 input 함수로 아이템을 입력받아 스택에 push하는 예제입니다.
stack = []
def push(value):
stack.append(value)
print(f"Pushed {value} into the stack.")
while True:
print("1. Push")
print("2. Exit")
choice = int(input("Enter your choice: "))
if choice == 1:
value = int(input("Enter a value to push: "))
push(value)
elif choice == 3:
print("Exiting the program.")
break
else:
print("Invalid choice. Please choose again.")
파이썬 현재 스택에 저장된 마지막 값 pop 예제
아래는 현재 스택에 저장된 마지막 값을 pop하여 출력하는 예제입니다.
stack = []
def push(value):
stack.append(value)
print(f"Pushed {value} into the stack.")
def pop():
if not stack:
print("Stack is empty. Cannot pop.")
else:
value = stack.pop()
print(f"Popped {value} from the stack.")
while True:
print("1. Push")
print("2. Pop")
print("3. Exit")
choice = int(input("Enter your choice: "))
if choice == 1:
value = int(input("Enter a value to push: "))
push(value)
elif choice == 2:
pop()
elif choice == 3:
print("Exiting the program.")
break
else:
print("Invalid choice. Please choose again.")
파이썬 스택 아이템 전체 출력 예제
아래는 스택에 저장된 모든 아이템을 출력하는 예제입니다.
stack = []
def push(value):
stack.append(value)
print(f"Pushed {value} into the stack.")
def pop():
if not stack:
print("Stack is empty. Cannot pop.")
else:
value = stack.pop()
print(f"Popped {value} from the stack.")
def print_stack():
if not stack:
print("Stack is empty.")
else:
print("Stack contents:", stack)
while True:
print("1. Push")
print("2. Pop")
print("3. Print Stack")
print("4. Exit")
choice = int(input("Enter your choice: "))
if choice == 1:
value = int(input("Enter a value to push: "))
push(value)
elif choice == 2:
pop()
elif choice == 3:
print_stack()
elif choice == 4:
print("Exiting the program.")
break
else:
print("Invalid choice. Please choose again.")