>  기사  >  백엔드 개발  >  Python Shutil 모듈 학습 요약

Python Shutil 모듈 학습 요약

高洛峰
高洛峰원래의
2017-03-12 10:39:331824검색

이 기사소개PythonShutil 모듈 학습요약

shutil 이름은 쉘 유틸리티에서 따온 것입니다(학습했거나 이해한 경우)Linux 사람들은 쉘에 익숙해야 하며 이를 이용하여 모듈 이름을 외울 수 있습니다. 이 모듈에는 복사, 이동, 이름 바꾸기, 삭제 등 다양한 파일(폴더) 작업 기능이 있습니다.

  1. chutil.복사 ( source, Destination)
    shutil.copy() Function은 파일 복사 기능을 구현하고 소스 파일을 대상 폴더에 복사합니다. 두 매개변수 모두 string 형식입니다. 대상이 파일 이름인 경우 복사된 파일 이름으로 사용되며 복사 + 이름 바꾸기와 동일합니다. 예:

    >> import shutdown
    >> ;> quitil.copy('C:spam.txt', 'C:delicious')
    'C:deliciousspam.txt'>> :deliciouseggs2.txt')'C:deliciouseggs2.txt'

    코드에서 보듯이
    함수
    의 반환값은 복사 성공 후 문자열 형식의 파일 경로입니다.

    shutil.copytree(source, Destination)

    shutil.copytree() 함수는 전체 폴더를 복사하여 소스의 내용을 포함하여 소스 폴더의 모든 내용을 대상으로 복사합니다. 파일과 하위 폴더가 복사됩니다. 두 매개변수 모두 문자열 형식입니다.
  2. 대상 폴더가 이미 존재하는 경우 이 작업은 파일이 이미 존재함을 나타내는

    파일
    ExistsError 오류를 반환합니다. 즉, 이 기능이 실행되면 프로그램은 자동으로 새 폴더(대상 매개변수)를 생성하고 소스 폴더의 내용을 거기에 복사합니다.

    예:


    > ;> import shutdown

    >> os.chdir('C:')
  3. >shutil.copytree('C:bacon', 'C : bacon_backup')
'C:bacon_backup'

如以上代码所示,该函数的返回值是复制成功后的文件夹的绝对路径字符串
所以该函数可以当成是一个备份功能



shutil.move(source, Destination)
shutil.move() 함수는 소스 파일이나 폴더를 다음 위치로 이동합니다. 목적지. 반환 값은 이동된 파일의 절대 경로 문자열입니다. 대상이 폴더를 가리키는 경우 소스 파일은 대상으로 이동되고 원래 이름은 유지됩니다. 예를 들면 다음과 같습니다.

  1. > import shutdown
    >> C :eggsbacon.txt'

    上例中,如果 C:\eggs 文件夹中已经存在了同名文件 bacon.txt,那么该文件将被来自于 source 中的同名文件所重写。
    
    如果 destination 指向一个文件,那么 source 文件将被移动并重命名,如下:
  2. >> shutdown.move('C:bacon.txt', 'C:eggs
new

_bacon.txt')
'C : eggnew_bacon.txt'

等于是移动+重命名

<b>注意,如果 destination 是一个文件夹,即没有带后缀的路径名,那么 source 将被移动并重命名为 destination</b>,如下:
>> shutdown.move('C:bacon.txt', 'C:eggs')

'C:eggs'

即 bacon.txt 文件已经被重命名为 eggs,是一个没有文件后缀的文件

最后,destination 文件夹必须是已经存在的,否则会引发异常:
> ; > shutdown.txt', 'C:does_not_existeggsham')
추적(최근 c

모두

마지막):
파일 "D:Python36libshutil.py", 줄 538 , in move

os.rename(src, real_dst)

FileNotFoundError: [WinError 3] 시스템이 지정된 경로를 찾을 수 없습니다. : 'test.txt' -> 'C:does_not_existeggsham'
예외
dl
하는 동안 또 다른 예외가 발생했습니다.
추적(최근 호출) last):
파일 "파일 및 폴더 영구 삭제
여기 os 모듈의 관련 기능이 있습니다.
os.unlink(path)는 경로 파일을 삭제합니다.

os.rmdir(path)는 경로 폴더를 삭제하지만 이 폴더는 비어 있어야 하며 파일이나 하위 폴더를 포함하지 않아야 합니다.
    shutil.rmtree(path)는 경로 폴더와 이 폴더에 있는 모든 파일 및 하위 폴더를 삭제합니다. 폴더가 삭제됩니다


  1. 기능을 사용하여 삭제 작업을 수행할 때 txt 파일을 삭제하려는 경우, 실수로 rxt를 작성하면 문제가 있습니다
    이때 문자열의
    속성

    과 함께
  2. end
스위치를 사용하여 파일 형식을 확인하고 필터링할 수 있습니다

위 내용은 Python Shutil 모듈 학습 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:Python 코드 사양다음 기사:Python 코드 사양