편집 기록

편집 기록
  • 프로필 nowp님의 편집
    날짜2021.02.02

    하위폴더 파일들을 모두 검색해서 파일로 만드려는데, print와 append값이 다름.


    제가 하위폴더 파일들을 모두 검색해서 파일로 만드는 프로젝트를 만드려 하는데 print로 하면 값이 잘나오지만 append로 리스트에 추가하고 리스트를 리턴하니 print로 나온값들이 들어가 있지 않습니다.

    import os
    from tkinter import filedialog
    from tkinter import *
    
    class FileList:
    
        def FolderOpen(self):
            window = Tk().withdraw()
            dirName=filedialog.askdirectory(initialdir="/",title='확인할 디렉토리를 선택해주세요.')
            return dirName
    
        def FileSave(self):
            window = Tk().withdraw()
            title = '파일 저장'
            ftypes = [('txt FIle', '.txt'), ('All files', '*')]
            filename = filedialog.asksaveasfilename(filetypes=ftypes, title=title, initialfile='FileSearch.txt')
            return filename
    
        def search(self, dirname):
            files = list()
            try:
                filenames = os.listdir(dirname)
                for filename in filenames:
                    full_filename = os.path.join(dirname, filename)
                    if os.path.isdir(full_filename):
                        self.search(full_filename)
                    else:
                        print(full_filename)
                        files.append(full_filename)
                return files
            except PermissionError:
                pass
    
    
    File = FileList()
    FolderFind = File.FolderOpen()
    filename = File.FileSave()
    file = File.search(FolderFind)
    print(file)
    
    

    print된 것들과 append된 리스트의 값이 달라요. 코드는 조코딩님꺼 참고하였습니다.

  • 프로필 알 수 없는 사용자님의 편집
    날짜2021.02.02

    print와 append값이 달라요ㅠㅠ 도와주세요


    제가 하위폴더 파일들을 모두 검색해서 파일로 만드는 프로젝트를 만드려 하는데 print로 하면 값이 잘나오지만 append로 리스트에 추가하고 리스트를 리턴하니 print로 나온값들이 들어가 있지 않습니다ㅠㅠ 도와주세요!

    import os
    from tkinter import filedialog
    from tkinter import *
    
    class FileList:
    
        def FolderOpen(self):
            window = Tk().withdraw()
            dirName=filedialog.askdirectory(initialdir="/",title='확인할 디렉토리를 선택해주세요.')
            return dirName
    
        def FileSave(self):
            window = Tk().withdraw()
            title = '파일 저장'
            ftypes = [('txt FIle', '.txt'), ('All files', '*')]
            filename = filedialog.asksaveasfilename(filetypes=ftypes, title=title, initialfile='FileSearch.txt')
            return filename
    
        def search(self, dirname):
            files = list()
            try:
                filenames = os.listdir(dirname)
                for filename in filenames:
                    full_filename = os.path.join(dirname, filename)
                    if os.path.isdir(full_filename):
                        self.search(full_filename)
                    else:
                        print(full_filename)
                        files.append(full_filename)
                return files
            except PermissionError:
                pass
    
    
    File = FileList()
    FolderFind = File.FolderOpen()
    filename = File.FileSave()
    file = File.search(FolderFind)
    print(file)
    
    

    print된 것들과 append된 리스트의 값이 달라요 ㅠㅠ 도와주세요 코드는 조코딩님꺼 참고하였습니다