160x600
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 시각화
- 파이썬
- SQL예제
- MariaDB
- 머신러닝
- sklearn
- Database
- 예측
- keras
- HeidiSQL
- 정확도
- 크롤링(crawling)
- 해석
- 선형회기모델
- 데이터베이스
- 데이터
- 데이터 분석
- 데이터전처리
- 딥러닝
- 데이터 수집
- 회귀모델
- pythone
- Deep Learning
- 알고리즘기초
- 훈련
- pandas
- python
- tensorflow
- python기초
- 데이터 가공
Archives
- Today
- Total
코딩헤딩
python 연습문제3 (도서관리 키오스크 프로그램 만들기2) 본문
728x90
https://coding-heading.tistory.com/37
python 연습문제2 (도서관리 키오스크 프로그램 만들기)
도서 입고/대출/반납 관리를 위한 키오스크 프로그램 만들기. *요구사항. - 도서 목록 : 새로운 책이 도서관에 [입고]되었을 때 프로그램 작성. - 도서 대출 : 도서 목록에서 임의 책을 빌리고자 할
coding-heading.tistory.com
*도서 입고/대출/반납 관리를 위한 키오스크 프로그램에 회원 전용 도서관리 프로그램 작성
[요구사항]
<최초메뉴>
: 회원번호는 문자여 무엇이든 상관없이 등록
: 서십스 종료 시 프로그램 자체 종료
[서비스 이용을위한 회원 인증]
1. 회원번호 등록
2. 회원인증
3. 서비스종료
<회원 인증이된경우 메뉴>
: 도서정보 : 도서번호, 도서제목, 재고권
: 도서상태 확인 : 특정 도서에 대한 정보 조회(도서번호, 도서제목, 현재권수/전체권수)
[도서 서비스 메뉴]
1. 도서입고
2. 도서대출
3. 도서반납
4. 도서상태 확인
5. 도서전체 목록 확인
6. 도서 서비스 종료(회원 인증 메뉴로 갑니다.)
class LibraryKiosk :
def __init__(self) :
self.books = {}
def add_book(self, book_id, title, quantity) :
if book_id in self.books :
self.books[book_id]["quantity"] += quantity
self.books[book_id]["all_quantity"] += quantity
else :
self.books[book_id] = {"title":title, "quantity":quantity, "all_quantity":quantity}
print(f"도서번호:{book_id} / 제목:{title} / 입고수량:{quantity} 입고 성공!!")
def borrow_booK(self, book_id):
if (book_id in self.books) and (self.books[book_id]["quantity"] > 0):
self.books[book_id]["quantity"] -= 1
print(f"도서번호:{book_id} / 제목:{self.books[book_id]['title']} / 남은 도서수량:{self.books[book_id]['quantity']}")
else:
print("도서가 존재하지 않거나, 대출할 재고가 없습니다.")
def return_book(self, book_id):
if book_id in self.books:
self.books[book_id]["quantity"] += 1
print(f"도서번호:{book_id} / 제목:{self.books[book_id]['title']} / 남은 도서수량:{self.books[book_id]['quantity']}")
else:
print("해당 도서가 존재하지 않습니다.")
def con_book(self, book_id):
if book_id in self.books:
print(f"도서번호:{book_id} / 제목:{self.books[book_id]['title']} / 현재 도서수량:{self.books[book_id]['quantity']} / 전체 도서수량:{self.books[book_id]['all_quantity']}")
else:
print("해당 도서가 존재하지 않습니다")
def lst_book(self):
for i in self.books:
print(f"전체 도서 목록 : {self.books[i]['title']} /")
def main() :
users = []
kiosk = LibraryKiosk()
while True :
print("<홈>")
print("1. 회원번호 등록")
print("2. 회원인증")
print("3. 서비스종료")
home_choice = input("1~3중 원하는 번호를 입력하세요. : ")
if home_choice == "1":
user_id = input("사용하실 회원번호를 입력해 주세요. : ")
if user_id in users:
print("이미 존재하는 회원번호 입니다. 다시 입력해 주세요.")
else:
users.append(user_id)
print(f"회원번호:{user_id} 등록완료 사용하시려면 2번을 눌러주세요")
elif home_choice == "2":
t_id = input("회원번호를 입력해 주세요. : ")
if t_id in users:
while True:
print("<도서 키오스크 메뉴>")
print("1. 도서 입고")
print("2. 도서 대출")
print("3. 도서 반납")
print("4. 도서상태 확인")
print("5. 도서전체 목록 확인")
print("6. 종료")
choice = input("원하는 번호(1~6)를 선택하세요. : ")
if choice == "1" :
book_id = input("도서 번호를 입력해 주세요. : ")
title = input("도서 제목를 입력해 주세요. : ")
quantity= int(input("입고할 권수를 입력해 주세요. : "))
kiosk.add_book(book_id, title, quantity)
elif choice == "2" :
book_id = input("대출할 도서번호를 입력해 주세요. : ")
kiosk.borrow_booK(book_id)
elif choice == "3" :
book_id = input("반납할 도서번호를 입력해 주세요. : ")
kiosk.return_book(book_id)
elif choice == "4" :
print("도서 상태보기")
book_id = input("확인할 도서번호를 입력해 주세요. : ")
kiosk.con_book(book_id)
elif choice == "5":
print("전체 도서목록 보기")
kiosk.lst_book()
elif choice == "6" :
print("홈으로 돌아갑니다.")
break
else :
print("잘못 선택...다시 선택해 주세요!!")
else:
print("회원번호를 다시 입력해 주세요")
elif home_choice == "3":
print("종료")
break
else:
print("다시 선택해 주세요")
if __name__ == "__main__" :
main()
728x90
'python' 카테고리의 다른 글
[파이썬 koNLPY] 한글 형태소 분석 라이브러리 (2) | 2023.12.05 |
---|---|
파이썬 가상환경 생성하기 (1) | 2023.11.18 |
python 예제 (1) | 2023.11.18 |
python 알고리즘 기초5 제너레이터(Generator)+예제 (0) | 2023.11.16 |
python 알고리즘 기초4 이터레이터(Iterator)+예제 (0) | 2023.11.16 |