python을 사용하여 빈 파일 만들기
경로가 있는 파일을 만들고 싶습니다.x
Python을 사용합니다.사용하고 있습니다.os.system(y)
어디에y = 'touch %s' % (x)
디렉토리 이외의 버전을 찾고 있습니다.os.mkdir
하지만 아무것도 못 찾았어요파일을 열거나 시스템 또는 팝업/서브프로세스를 사용하지 않고 파일을 작성할 수 있는 툴이 있습니까?
파일을 열지 않고는 파일을 생성할 수 없습니다. 있다os.mknod("newfile.txt")
(단, OSX에 대한 루트 권한이 필요합니다).파일을 작성하기 위한 시스템콜은 실제로open()
와 함께O_CREAT
플래그요. 그러니 무슨 일이 있어도 항상 파일을 열게 될 겁니다.
따라서 파일이 존재하는 경우 파일을 잘라내지 않고 간단하게 작성할 수 있는 가장 쉬운 방법은 다음과 같습니다.
open(x, 'a').close()
사실, 당신은 생략할 수 있습니다..close()
왜냐하면 CPython의 리카운팅 GC는 CPython의 리카운팅 GC를 즉시 닫을 것이기 때문이다.open()
스테이트먼트는 종료되었습니다.단, 설명을 하는 것이 더 명확하고 CPython 고유의 행동에 의존하는 것도 좋지 않습니다.
원하시면touch
의 동작(즉, 파일이 존재하는 경우 mtime을 갱신):
import os
def touch(path):
with open(path, 'a'):
os.utime(path, None)
이를 확장하여 존재하지 않는 디렉터리를 경로에 만들 수도 있습니다.
basedir = os.path.dirname(path)
if not os.path.exists(basedir):
os.makedirs(basedir)
물론 파일을 열지 않고 작성하는 방법도 있습니다.전화하는 것만큼이나 쉽다.os.mknod("newfile.txt")
유일한 단점은 이 콜에 OSX의 루트 특권이 필요하다는 것입니다.
언급URL : https://stackoverflow.com/questions/12654772/create-empty-file-using-python
'source' 카테고리의 다른 글
조건부로 부모 요소 렌더링, 내부 html 유지 (0) | 2022.10.26 |
---|---|
matplotlib의 플롯을 클리어하기 위해 cla(), clf() 또는 close()를 사용하는 경우 (0) | 2022.10.26 |
Nuxt 및 Vuex를 사용하여 getter와 액션을 찾을 수 없는 이유는 무엇입니까? (0) | 2022.10.26 |
Java에서 null-return 메서드를 Scala 옵션과 함께 래핑하시겠습니까? (0) | 2022.10.26 |
Go(Golang)에서 Python 확장자 쓰기 (0) | 2022.10.26 |