폴더에서 특정 파일을 만들기 위해 /를 사용하는 코드를 파이썬으로 작성했습니다 .Windows에서 코드를 사용하려는 경우 작동하지 않습니다 .Windows 및 Linux에서 코드를 사용할 수있는 방법이 있습니까?
파이썬에서는이 코드를 사용하고 있습니다 :
pathfile=os.path.dirname(templateFile)
rootTree.write(''+pathfile+'/output/log.txt')
Windows 컴퓨터에서 코드를 사용하면 코드가 작동하지 않는다고 가정합니다.
Linux와 Windows에서 “/”(디렉토리 구분 기호)를 어떻게 사용합니까?
답변
사용하십시오 os.path.join()
. 예 : os.path.join(pathfile,"output","log.txt")
.
코드에서 다음과 같습니다. rootTree.write(os.path.join(pathfile,"output","log.txt"))
답변
사용하다:
import os
print os.sep
현재 OS에서 구분 기호가 어떻게 보이는지 확인하십시오.
코드에서 다음을 사용할 수 있습니다.
import os
path = os.path.join('folder_name', 'file_name')
답변
답변
os.path.normpath(pathname)
Windows 에서는 /
경로 구분 기호를 \
구분 기호로 변환하므로 언급해야합니다 . 또한 중복 상위 수준 참조 … 예를 축소, A/B
그리고 A/foo/../B
그리고 A/./B
모두가 A/B
. 그리고 당신이 Windows라면, 이것들은 모두가 A\B
됩니다.
답변
운 좋게도 Python 3.4+를 실행하려면 다음을 사용할 수 있습니다 pathlib
.
from pathlib import Path
path = Path(dir, subdir, filename) # returns a path of the system's path flavour
또는 동등하게
path = Path(dir) / subdir / filename