python 필수 지식 파일 작업(모음 집 권장)

파일 기본 작업
1.1 파일 열기 및 닫 기
  • open('파일 이름','열기 모드')
  • 모드:r(읽 기 전용,포인터 재 헤드)w(쓰기 전용,덮어 쓰기,혁신 저장 없 음)a(추가)b(바 이 너 리 형식)
  • close()방법 으로 파일 닫 기
  • 
    f=open('text.txt','w')#  text.txt  , f   
    f.close()#    
    
    메모:파일 을 열 고 닫 아야 합 니 다.그렇지 않 으 면 이 파일 을 계속 조작 할 수 없습니다.with컨 텍스트 관 리 는 파일 을 처리 하 는 과정 에서 이상 이 발생 하 든 안 하 든 with 문 구 를 실행 한 후에 열 린 파일 핸들 을 닫 을 수 있 습 니 다.
    
    def main():
        with open('text.txt','w+') as f:
            content=f.read()#        
            print(content)#  
    main()#            
    
    오류:io.Unsupported Operation:not readable
    파일 을open로 열 었 기 때문에w기록 모드 를 호출 했 습 니 다.아래read를 사용 하 는 것 은 권한 이 없습니다.w+읽 기와 쓰기 모드 를 사용 해 야 합 니 다.
    在这里插入图片描述
    1.2 파일 읽 기/쓰기
    1.2.1 파일 쓰기
    파일 쓰기write기본 인 코딩 은gbk중국어 인 코딩 입 니 다.가장 좋 은 습관 은 우리 가 파일 을 하나 더 열 때 인 코딩 형식encoding을 지정 하 는 것 입 니 다.그렇지 않 으 면 오류 가 발생 할 수 있 습 니 다.
    
    f=open('text.txt','w',encoding='utf-8')#w     
    f.write('    ,  python')#    text.txt
    f.close()
    
    #writelines()         
    f=open('text.txt','a',encoding='utf-8')#a     
    
    그 는 자동 으로 text 파일 을 생 성하 여 쓸 것 이다.
    在这里插入图片描述
    writelines 방법 은 대상 을 교체 하고 파일 을 교체 해서 쓸 수 있 습 니 다.
    
    f.write('\r
    ') f.writelines([' ',' ',' ']) print('
    ') f.close()
    在这里插入图片描述
    1.2.2 파일 읽 기
     read(num):지정 한 문자 개 수 를 읽 는 것 을 나타 내 는 숫자 를 매개 변수 로 입력 합 니 다.열:read(1)
    readlines():줄 별로 읽 고 모든 내용 을 한꺼번에 읽 으 며 목록 을 되 돌려 줍 니 다.줄 마다 내용 을 하나의 요소 로 합 니 다.
    readline():줄 별로 읽 지만 한 번 에 한 줄 만 읽 습 니 다.
    
    #    
    f=open('text.txt','r',encoding='utf-8')#    
    print(f.read())#      
    f.close()
    메모:UnicodeDecodeError:'gbk'codec can't decode byte 0xad in position 52:illegal multibyte sequence error
    해결:open 에 encoding='utf-8'을 넣 으 면 됩 니 다.
    파일 백업 스 크 립 트
    스 크 립 트 를 이용 하여 자동 백업 을 완료 하고 파일 이름 을 입력 하 라 고 요구 하 며 자동 백업 을 완료 합 니 다.
    
    def copyfile():
        #       
        old_file=input('         :')
        file_list=old_file.split(".")#split()                 ,     text.txt  ,   ['text', 'txt']
        new_file=file_list[0]+'_  .'+file_list[1]#       ,      
        old_f=open(old_file,'r')#           
        new_f=open(new_file,'w')#         ,      
        new_f.write(old_f.read())#                
        #        
        old_f.close()
        new_f.close()
    copyfile()#             text_  .txt   ,         
    
    在这里插入图片描述
    큰 파일 을 처리 하면 한 번 에 모든 내용 을 읽 는 것 은 적절 하지 않 습 니 다.위의 코드 를 바탕 으로 코드 를 개선 하여 큰 파일 을 백업 해도 메모리 가 가득 차지 않도록 합 니 다.
    
    def copyfile2():
        #       
        old_file=input('        ')
        #               
        if not old_file:
            print('    ')
            old_file = input('        :')
        else:
             file_list=old_file.split(".")
             print(file_list)
        #       ,      
        if len(file_list)<2:#        2,    .
            new_file=file_list[0]+'_  2'
            pass
        else:#        
            new_file=file_list[0]+'_  2.'+file_list[1]
        #              
        try:
            #           ,   
            with open(old_file,'r') as old_f, open(new_file,'a')  as  new_f:
                while True:
                    content=old_f.read(2048)#    2048   
                    new_f.write(content)#  
                    #            2048       
                    if len(content)<2048:
                        break#    
        except Exception as e:
            print(e)#          ,     
    copyfile2()#             text_  2.txt   ,         
    
    text.txt 를 백업 하 였 습 니 다.
    在这里插入图片描述
    총결산
    python 필수 지식 에 관 한 파일 작업 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 python 파일 작업 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 조회 하 시기 바 랍 니 다.앞으로 많은 응원 바 랍 니 다!

    좋은 웹페이지 즐겨찾기