Длинные пути в Python в Windows
У меня проблема при программировании на Python, запущенном под Windows. Мне нужно работать с файловыми путями, длина которых превышает 256 или whatsathelimit. Теперь я читал в основном о двух решениях:
- Используйте GetShortPathName из kernel32.dll и получите доступ к файлу таким образом.
Это хорошо, но я не могу использовать его, так как мне нужно использовать пути таким образом
shutil.rmtree(short_path)
где short_path – действительно короткий путь (что-то вроде D:\tools\Eclipse
), а длинные пути появляются в самой директории (плагины damn Eclipse).
- Подготовьте
"\\\\?\\"
к пути
Мне это никак не удалось. Попытка сделать что-либо таким образом всегда приводит к ошибке WindowsError: [Error 123] The filename, directory name, or volume label syntax is incorrect: <path here>
Поэтому мой вопрос: как мне сделать второй вариант работы? Я подчеркиваю, что мне нужно использовать его так же, как в примере в опции №1.
ИЛИ
Есть ли другой путь?
EDIT: Мне нужно решение для работы в Python 2.7
EDIT2: Вопрос. Поддержка имени файла Python long filename, поврежденного в Windows , дает ответ с «магическим префиксом», и я заявил, что знаю это в этом вопросе. То, что я не знаю, это КАК использовать. Я попытался добавить это к пути, но это просто не удалось, как я уже писал выше.
- убить main thead из дочернего потока python
- Настройка разрешений реестра Windows XP с использованием Python
- Как получить путь к каталогу программ меню «Пуск»?
- GAE Python – PyCrypto – Нет модуля с именем winrandom
- многопроцессорность в консоли IPython на компьютере Windows – если требование __name_
Кажется, что, как всегда, я нашел ответ на то, что прослушивало меня в течение недели через двадцать минут после того, как я серьезно спросил кого-нибудь об этом.
Поэтому я обнаружил, что мне нужно убедиться, что две вещи выполнены правильно:
- Путь может содержать только обратную косую черту, без косой черты.
- Если я хочу сделать что-то вроде списка в каталоге, мне нужно закончить путь с помощью обратного слэша, иначе Python добавит
/*.*
к нему, что является косой чертой, что плохо.
Надеюсь, что кто-то найдет это полезным.
- Python Interactive Interpreter всегда возвращает «Недопустимый синтаксис» в Windows
- falied установить колбу под virutalenv на окна – Система не может найти указанный файл
- python lxml недоступен в dev_appserver (gae, windows)
- Веб – новости отвесного Google
- Сон для точного времени в python
- Представьте пустой экран, дождитесь нажатия клавиши – как?
- Пусковая установка Windows Python не читает `py.ini`
- «IOError Permisson отрицает« при копировании файла в Windows »
- Множество проблем, связанных с установкой Python bcrypt в Windows (x64)