파일 읽고 쓰기) 데이터 별로 리스트를 만들어 작성하는 방법이 무엇인가요?

조회수 610회
import os
QUIT = 7

def get_menu_choice:
    print()
    print('메뉴')
    print('---------------------------------')
    print('1.도서 등록')
    print('2.도서목록 전체 출력')
    print('3.도서 개별 검색')
    print('4.도서 정보 삭제(개별)')
    print('5.도서 정보 삭제(전체)')
    print('6.대출가능 도서 목록 출력')
    print('7.종료')
    print()

    선택 = int(input('선택 >>'))

    while 선택 < 1 or 선택 > QUIT :
        선택 = int(input('메뉴 번호는 확인해주세요 : '))

    return 선택

def main():
    선택 = 0
    while 선택 != QUIT:
        선택 = get_menu_choice()

        if 선택 == 1:
            등록()
        elif 선택 == 2:
            전체출력()
        elif 선택 == 3:
            개별출력()
        elif 선택 == 4:
            개별삭제()
        elif 선택 == 5:
            전체삭제()
        elif 선택 == 6:
            가능목록출력()

def 등록():
    계속 = 'y'
    도서_파일 = open('도서목록.txt','a')
    while 계속 =='Y', or 계속 == 'y':
        print('도서에 관한 내용 입력 : ')
        도서명 = input('도 서 명 :')
        저자 = input(' 저 자 :')
        출판사 = input('출 판 사 :')
        대출가능여부 input('대출가능여부:')

        도서_파일.write(도서명 + ',')
        도서_파일.write(저자 + ',')
        도서_파일.write(출판사 + ',')
        도서_파일.write(대출가능여부 + '\n')

        print('추가할 자료가 더 있습니까?')
        계속 = input('Y = yes, anthing else = no :')

    동화_파일.close()
    print('동화목록.txt에 기록을 완료하였습니다.')

def 전체출력():
    도서_파일 = open('도서목록.txt','r')
    표 = []
    라인 = 도서_파일.readline()
    while 라인 != '':

        라인 = 라인.rstrip('\n')
        행 = 라인.split(',')

        표.append(행)

        del 행

        라인 = 도서_파일.readline()

    도서_파일.close()

    print('도서목록.txt에서 읽은 자료를 화면에 출력합니다.')
    print()
    print('  도 서 명  '+'\t'+ '   저 자   '+'\t'+'출 판 사'+'\t'+' 대출가능여부'+'\t')
    print('-'*60)
    for 행번호 in range(len(표)):
        print(표[행번호][0] +'\t' + 표[행번호][1] + ',' + 표[행번호][2] + ',' + 표[행번호][3]+','+
                   표[행번호][4]+'\t'+표[행번호][5]+'\t'+표[행번호][6])

    return 표


def 개별출력():

    찾았다 = False

    검색도서 = input('찾을 도서명을 입력하세요 : ')
    도서_파일 = open('도서목록.txt','r')
    도서명 = 도서_파일.readline()
    while 도서명 != '':

        도서명 = 도서명.rstrip('\n')

        if 도서명 == 검색도서:
            print('도서명 :',도서명)
            print('저자 :',저자)
            print('출판사 : ',출판사)
            print('대출가능여부 : ',대출가능여부)
            print()
            찾았다 = True

        도서명 = 도서_파일.readline()

    도서_파일.close()

    if not 찾았다 :
        print('찾으시는 도서가 자료에 없습니다.')


def 전체출력():
    os.remove('도서목록.txt')
    std_file = open('도서목록.txt','w')
    std_file.close()



def 대출가능도서():

    표 = []

    대출여부 = input('검색할 결과를 입력(대출가능 / 대출불가능) : ')
    if 대출여부 == ',':
        return

    읽기모드파일 = opne('도서정보.txt','r')

위에서 def 대출가능도서() 함수는 대출 가능이라는 값을 입력했을때 대출 가능한 도서들을 리스트로 나오게 하고 싶어요.. 어떻게 해야 할까요? 그리고 위의 함수들에서 잘못된 것이 있다면 알려주셨으면 좋겠어요!

  • 대학교들 방학중아닌가요? 계절학기인가... 정영훈 2019.12.20 22:40

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)