입력 파일과 대상 디렉터리가 있다고 가정 해보십시오. 입력 파일이 대상 디렉토리와 동일한 하드 드라이브 (또는 파티션)에 있는지 어떻게 결정합니까?디렉터리가 같은 파티션에 있는지 확인하는 방법
내가하고 싶은 것은 파일이 다른 경우 파일을 복사하는 것이지만 동일한 경우 파일을 복사하는 것입니다. 예를 들어 : CesarB의 대답에
target_directory = "/Volumes/externalDrive/something/"
input_foldername, input_filename = os.path.split(input_file)
if same_partition(input_foldername, target_directory):
copy(input_file, target_directory)
else:
move(input_file, target_directory)
감사의 same_partition
기능이 구현 :
import os
def same_partition(f1, f2):
return os.stat(f1).st_dev == os.stat(f2).st_dev
Windows에서는 작동하지 않으므로 모든 드라이브에 대해 st_dev는 0으로 유지됩니다. (osX와 linux 태그를 지정했기 때문에 아마도 질문자에게는 문제가되지 않을 것입니다.) – Brian