Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python을 사용하여 임시 파일 및 디렉토리 생성

<시간/>

임시 파일 표준 라이브러리의 모듈은 임시 파일 및 디렉토리를 생성하기 위한 함수를 정의합니다. 운영 체제 파일 시스템에 의해 정의된 특수 임시 디렉토리에 생성됩니다. 예를 들어 Windows에서 임시 폴더는 profile/AppData/Local/Temp에 있고 Linux에서는 임시 파일이 /tmp 디렉토리에 있습니다.

다음 함수는 tempfile 모듈에 정의되어 있습니다.

임시 파일()

이 함수는 temp 디렉토리에 임시 파일을 생성하고 내장 open() 함수와 유사한 파일 객체를 반환합니다. 파일은 기본적으로 wb+ 모드로 열리므로 동시에 이진 데이터를 읽고 쓸 수 있습니다. 중요한 것은 temp 폴더에 있는 파일 항목은 파일 개체가 닫히면 바로 제거된다는 것입니다. 다음 코드는 TemporaryFile() 함수의 사용법을 보여줍니다.

>>> 임시 파일 가져오기>>> f =tempfile.TemporaryFile()>>> f.write(b'TutorialsPoint에 오신 것을 환영합니다')>>> 가져오기 os>>> f.seek(os.SEEK_SET)>>> f.read()b'TutorialsPoint에 오신 것을 환영합니다'>>> f.close()

다음 예제는 w+ 모드에서 TemporaryFile 객체를 열어 바이너리 데이터 대신 텍스트 데이터를 쓰고 읽습니다.

>>> ff =tempfile.TemporaryFile(모드 ='w+')>>> ff.write('안녕하세요 세계')>>> ff.seek(0)>>> ff.read()'안녕하세요 세계 '>>> ff.close()

이름이 지정된 임시 파일()

이 함수는 TemporaryFile() 함수와 유사합니다. 유일한 차이점은 임의의 파일 이름을 가진 파일이 운영 체제의 지정된 임시 폴더에서 볼 수 있다는 것입니다. 이름은 파일 개체의 이름 속성으로 검색할 수 있습니다. 이 파일도 닫으면 즉시 삭제됩니다.

>>> fo =tempfile.NamedTemporaryFile()>>> fo.name'C:\\Users\\acer\\AppData\\Local\\Temp\\tmpipreok8q'>>> fo.close() 

임시 디렉토리()

이 함수는 임시 디렉토리를 생성합니다. dir 매개변수를 언급하여 이 임시 디렉토리의 위치를 ​​선택할 수 있습니다. 다음 명령문은 C:\\python36 폴더에 임시 디렉토리를 생성합니다.

>>> f =tempfile.TemporaryDirectory(dir ="C:/python36")

생성된 디렉토리는 dir1 폴더에 나타납니다. 디렉토리 객체에 cleanup() 함수를 호출하여 제거합니다.

>>> f.name'C:/python36\\tmp9wrjtxc_'>>> f.cleanup()

mkstemp()

이 기능은 TemporaryFile() 함수와 유사한 임시 파일도 생성합니다. 또한 생성된 임시 파일과 함께 접미사 및 접두사 매개변수를 추가할 수 있습니다. TemporaryFile()의 경우와 달리 생성된 파일은 자동으로 제거되지 않습니다. 수동으로 제거해야 합니다.

>>> f =tempfile.mkstemp(접미사 ='.tp')C:\Users\acer\AppData\Local\Temp\tmpbljk6ku8.tp

mkdtemp()

이 함수는 또한 운영 체제의 임시 폴더에 임시 디렉터리를 만들고 절대 경로 이름을 반환합니다. 생성 위치를 명시적으로 정의하려면 dir 매개변수를 사용하십시오. 이 폴더도 자동으로 제거되지 않습니다.

>>> tempfile.mkdtemp(dir ="c:/python36")'c:/python36\\tmpruxmm66u'

gettempdir()

이 함수는 임시 파일을 저장할 디렉토리의 이름을 반환합니다. 이 이름은 일반적으로 tempdir 환경 변수에서 얻습니다. Windows 플랫폼에서는 일반적으로 user/AppData/Local/Temp 또는 windowsdir/temp 또는 systemdrive/temp입니다. Linux에서는 일반적으로 /tmp입니다. 이 디렉토리는 dir 매개변수의 기본값으로 사용됩니다.

>>> tempfile.gettempdir()'C:\\Users\\acer\\AppData\\Local\\Temp'

이 기사에서는 tempfile 모듈의 기능에 대해 설명했습니다.