Python/Python 연습

04. Class 04

HicKee 2023. 1. 25. 15:56

랜덤하게 이름을 생성 파일에 쓰고 읽기

class NameData:
    def __init__(self, first, mid, last):
        self.__first = first
        self.__mid = mid
        self.__last = last
        self.__numList = []
        self.__namelist = []
        self.__name = ''

    # 랜덤 이름 생성
    def createname(self, num):

        for j in range(num + 1):
            self.__namelist.append(self.__first[random.randint(0, len(self.__first) - 1)]
                                   + self.__mid[random.randint(0, len(self.__first) - 1)]
                                   + self.__last[random.randint(0, len(self.__first) - 1)])

        return self.__namelist

    def writefile(self, nmlist):
        lines = nmlist
        try:
            with open('name.txt', 'w') as f:
                for line in lines:
                    f.write(line+'/')
        except FileNotFoundError as err:
            print('파일 쓰기 오류')

    def readfile(self, fileroute):
        try:
            with open(fileroute, 'r') as f:
                lines = f.readlines()
                for line in lines:
                    print(line)
        except FileNotFoundError as err:
            print('파일 읽기 오류')


if __name__ == '__main__':
    fir = ['김', '나', '박', '이', '최']
    sec = ['가', '나', '다', '라', '마']
    thr = ['바', '사', '아', '자', '차']

    nd = NameData(fir, sec, thr)
    namelist = nd.createname(50)
    print(namelist)
    nd.writefile(namelist)
    nd.readfile('name.txt')

'Python > Python 연습' 카테고리의 다른 글

04. Class 06  (0) 2023.01.30
04. Class 05  (0) 2023.01.25
04. Class 03  (0) 2023.01.22
04. Class 02  (0) 2023.01.21
04. Class 01  (0) 2023.01.18