Как проверить состояние чтения / записи носителя в Python? - PullRequest
0 голосов
/ 20 марта 2010

Как я могу проверить разрешение на чтение / запись носителя для хранения файлов? т.е. предположим, что мне нужно записать какой-нибудь файл в каталог, и этот каталог может быть доступен на носителе только для чтения, таком как (CD или DVD) или т. д. Итак, как я могу проверить, что носитель хранения (CD, жесткий диск) имеет только чтение или чтение напишите оба разрешения.

Я использую Windows XP OS.

Спасибо.

Ответы [ 3 ]

3 голосов
/ 20 марта 2010

Используйте функцию os.access (путь, режим) . Он должен быть намного более переносимым, чем функция win32api. Тем не менее, у меня нет опыта работы с ней на не POSIX системах.

С другой стороны, почему бы вам просто не попробовать написать файл и обработать исключение соответствующим образом?

1 голос
/ 20 марта 2010
import os
from stat import *

if S_IMODE(os.stat(dir_name)) & S_IWRITE != 0:

более переносимый, если не обязательно более читаемый.

0 голосов
/ 20 марта 2010

Используйте метод win32api.GetFileAttributes.

P.S. см. также этот вопрос

...