Python12 python 도서관리프로그램(difine)(2) 2023.11.20 - [python] - python 도서관리프로그램(define)(1) 이전글에 이어서 작성한다. 이번에는 도서 관련 기능들을 만들어보자. 전글에서 작성했던것 처럼 이용자가 키워드를 입력하여 동작하는 형태로 코드를 구현하였다. 도서의 데이터 형태는 dictionary를 사용하였다 book = {} 도서들을 묶은 데이터의 형태는 list를 사용하였다. book_list = [] 우선 이용자가 키워드를 입력할 수 있도록 함수를 정의하였다. def input_menu(): return input(""" 원하시는 메뉴를 눌러주세요. I : 도서 입고 R : 도서 반납 L : 도서 대출 C : 도서 상태 확인 B : 전체 도서 목록 Q : 프로그램 종료 """).upper() 소문자로 입력하여.. python 2023. 11. 20. python 도서관리프로그램(define)(1) 함수를 사용하여 도서관리 프로그램을 만들어보려고 한다. 우선 조건을 정해봤는데, 1. 회원을 등록하고, 인증 시에 도서와 관련된 기능들을 사용할 수 있다. 2. 도서의 정보는 도서번호, 도서제목, 도서재고수량, 대출된 도서의 수량, 도서의 전체권수를 담고 있다. 3. 도서가 입고가 되지 않았을 때, 빌릴 수 없고 대출 중인 도서가 없을 때 반납을 할 수 없다. 서비스를 이용하기 위한 회원인증 시스템을 먼저 만들어보자. 회원의 정보는 회원번호만 받아서 저장할 것이다. 회원 데이터의 변수는 user_list로 정했다. 우선 변수를 선언한다. user_list = [] # 시작시 입력받기 def start_menu() : return input(""" 원하시는 메뉴를 선택해주세요. S = 회원등록 C = 회원.. python 2023. 11. 20. python 기초 (함수(function)) 어느 문법이나 함수는 중요하다. 함수란 무엇일까? 학창 시절을 생각해 보면 y = f(x)의 형태로 사용했던 것 같다. 우리가 문법을 사용하면서 함수를 사용하는 이유는 무엇일까? 아마 편하게 코드를 작성하기 위해서가 가장 큰 이유가 아닐까싶다. 함수를 사용하지 않으면 똑같은 코드를 몇 번이고 작성해야 할 것이다. 그렇다면 함수를 사용하는 방법을 확인해 보자 우선 함수를 정의할 때는 다음과 같은 형태로 선언해 준다. def 함수명(변수1, 변수2...) : 실행문1 실행문2... return 결과값 def를 키워드를 사용하여 함수를 선언하는데 함수명은 함수가 어떤 것을 담당하는지 생각하고 작성하도록 하자. 함수가 한두 개일 때는 괜찮지만 개수가 늘어나면 헷갈리기 시작한다. 함수 안에서 선언된 변수는 함수밖.. python 2023. 11. 20. python 기초(정규식(Regular Expression)) 정규식은 모든 나라에서 공통으로 사용된다. 패턴이 많아서 사용할 때마다 헷갈리기 쉽다. 정규식을 사용하는데 쉽게 와닿는곳은 회원가입을 할 때이다. 메일주소나 휴대폰 번호를 입력할 때, 정규식을 사용한다. @이가 꼭 들어가야 한다던지, 전화번호 중간과 끝이 4자리씩 들어간다던지 할 때이다. 정규표현식 패턴은 아래와 같다. # * 대괄호 ([]) : 대괄호 안에 있는 문자중에 하나라도 매치되면 추출 * 점(.) : 앞뒤 문자의 사이에 보통 주로 사용, 하나의 문자를 의미 * 반복(*) : 앞의 문자가 0번 이상 반복될 때 추출 * 반복(+) : 앞의 문자가 1번 이상 반복될 때 추출 * 반복({m, n}) : 앞의 문자가 최소 m번, 최대 n번 반복될 때 추출 * 시작(^)과 끝($) : 각 문자열의 시작과.. python 2023. 11. 16. python 기초 (예외 처리) 파이썬에서 예외처리는 java와 유사했다. 사용하는 형태는 # 예외처리 - 오류를 처리 할 수 있게끔 지원 한다. - try : 실행문1, 실행문2.... - except 발생오류 as 오류변수 : 에러가 났을 때에 실행 할 실행문... 위와 같은 형태로 사용한다. java는 try와 catch를 사용하는데, python에서는 except를 사용한다. 이런 건 나중에 통일되면 좋을 것 같다. a = [1, 2, 3, 4, 5] b = 6 try : print(a.index(b)) except : print('인덱스 오류') 결과 : '인덱스 오류' 위와 같은 방식으로 사용한다. 예외 처리를 할때 except를 최대한 세부적으로 작성하는 것이 좋다. 하나로 뭉쳐 예외처리를 하면 에러가 발생했을때 수정해야 .. python 2023. 11. 16. python 기초(제어문 - while) 제어문에서 while문은 if문이나 for문과 성격이 약간 다르다. 다른 조건문은 조건이 만족되면 실행하지만 while문은 우선 실행을 하고, 조건이 맞거나 break등을 이용하여 멈추도록 한다. 예를 들어 조건을 이용하는 방식에는 jajang = 0 while jajang python 2023. 11. 16. python 기초(제어문 - for) 제어문에서 가장 많이 쓰이는 것은 for문이다. for문은 for i in (변수, 함수, 데이터)의 형태로 사용한다. in 뒤에있는 데이터를 i에 할당하며, in뒤에 있는 데이터의 길이만큼 동작한다. ls = [1, 2, 3, 4, 5] for i in ls: print(i) 결과 : 1 2 3 4 5 위처럼 리스트의 길이만큼 동작하는 것을 볼 수 있다. for문은 두 가지 방식으로 사용할 수 있는데, 첫 번째 방법은 값을 이용하는 것이고, 또 하나의 방법은 인덱스 번호를 이용해서 추출할 수 있다. 값을 이용하는 방식은 위의 코드처럼 사용한다. 인덱스 번호를 이용하는 방법은 range함수를 사용하는 것이다. range(0 , 10 , 2)의 형태로 사용한다. 함수의 매개변수는 3개가 들어가져 있는데, .. python 2023. 11. 15. python 기초(튜플) 튜플은 리스트와 유사한 형태로 보인다. 리스트와 차이점은 리스트보다 빠르고, 데이터를 변경할 수 없다는 것이다. 사용할 때는 ()기호를 사용한다. a = (1,2,3,4) print(a, type(a)) 결과 : (1,2,3,4) 위와 같이 튜플은 ()로 감싸서 사용하며, 데이터가 변하지 않고 반복해서 사용할때 유용하다. 짧은 코드에서는 차이가 느껴지지 않을 수도 있지만 코드가 길어지면 속도에서 차이가 나니 최적화를 위해 사용하도록 하자. python 2023. 11. 15. python 기초(제어문 - if문) 제어문은 어떤 언어이든 많이 사용된다. 한번 헷갈리면 계속 헷갈리는 것 같다. 제어문을 많이 연습해 두면 생각나는 데로 코드를 짤 수 있어, 속도가 올라가는 것을 느꼈다. 제어문에는 if문, for문, while문등이 있다. if문은 조건의 참과 거짓을 구별하고 참일 때 동작한다. if 조건 : 실행문1 실행문2 실행문3 조건이 거짓일 때 if문은 동작하지 않는다. 조건이 아닐 때는 else로 표현하고, 실행문을 따로 작성한다. 하지만 내 생각에는 else로 묶어서 코드를 작성하는 것보다는 최대한 if를 사용하는 것이 가독성을 늘려주는 것이 좋은 것 같다. x =3 if x == 3: print('3임') else : print('3아님') 결과 : '3임' 위와 같이 사용한다. 조건문은 여러 개 사용할.. python 2023. 11. 14. python 기초(딕셔너리) 딕셔너리는 말 그대로 사전이라는 의미를 가지고 있다. key와 value를 가지고 있는 property의 형태이다. 리스트와 다른점은 리스트의 경우 값만을 가지고 있어 리스트 안의 데이터를 사용할 때, 리스트 안의 데이터의 순서를 알고 있어야 특정 데이터를 바로 사용할 수 있었는데 딕셔너리의 경우 key를 자신이 작성하여 더욱 쉽게 데이터를 사용할 수 있다. 변수명 = { 'key' : value }의 형태로 할당할 수 있다. key는 중복해서 사용할 수 없다. 사용방법 dic = { 'name' : 'merry' , 'age' : 27 } print(dic) 결과 : { 'name' : 'merry' , 'age' : 27 } 위와 같이 할당하고 사용할 수 있다. 리스트와 같이 여러 가지 형태의 데이터.. python 2023. 11. 11. python 기초(데이터 구조) 데이터의 종류는 다음과 같다. 숫자형 - 정수 - 실수 문자형 - 문자 - 문자열 복합형 - 리스트 - 딕셔너리 - 클래스 이번에는 리스트를 정리해 보려고 한다. 우선 리스트 list는 요소들의 모음을 나타내는 자료형 데이터이다. - 요소들은 [] 안에 감싸진다. - 모든 자료형을 담을 수 있다. li = list() li[] li['name', 27, '011-123-1234' ] 위와 같이 리스트를 선언할 수 있다. 요즘에는 li = list()로 선언한다고 하는데, 나는 li []가 더 편한 것 같다. 여러 가지 자료형을 같이 담을 수 있는 것을 확인할 수 있다. 리스트는 연산이 가능하다. 더하기와 곱하기를 지원한다. a = [1, 2, 3] b = [4, 5, 6] print(a + b) #위와 .. python 2023. 11. 9. Python 기초(변수) 변수는 무엇일까? 변수의 개념은 데이터를 저장하기 위한 메모리 공간을 가리키는 이름이다. 그렇다면 변수는 왜 사용하는 것일까? 짧은 데이터, 예를들어 12라는 데이터가 있다면 그냥 12로 사용해도 무방하다. 그렇지만 데이터의 크기가 커진다면 데이터를 사용할 때 굉장히 불편해진다. 백만 말로하면 굉장히 짧지만 숫자로는 1000000으로 표현하는데 작다면 작은 이 데이터를 반복해서 사용한다면 굉장히 귀찮아진다. 이럴 때 변수를 사용하면 사용이 간편해진다. x = 1000000 print(x) x만 사용해도 값이 1000000이라고 나온다. 여기서 x는 1000000이라는 데이터를 저장한 공간의 이름이라고 생각하면 쉽게 이해할 수 있다. python에서 변수의 이름을 지을 때는 규칙이 있다. 1. 영문자를 사.. python 2023. 11. 8. 이전 1 다음