|
0 / 0 / 0
Регистрация: 28.01.2017
Сообщений: 2
|
||||||
Ограничение во вложенности поддиректорий28.01.2017, 18:07. Показов 3578. Ответов 15
Метки python 3.x (Все метки)
Граждане, айнидхелп, проблема такая:
на 3-ем Питоне пишу программу, которая исследует директории со всеми вложенными подпапками по рекурсивному принципу:
Отсюда вопрос: каким образом либо расширить этот диапазон вложенности, либо применить иные механизмы для его сокращения, напр. воспользоваться относительным путём вместо абсолютного. Пока у самого меня ничего не вышло. Заранее спасибо!
0
|
||||||
| 28.01.2017, 18:07 | |
|
Ответы с готовыми решениями:
15
Ограничение вложенности древовидных комментариев |
|
757 / 306 / 190
Регистрация: 20.05.2016
Сообщений: 593
|
||||||
| 28.01.2017, 22:04 | ||||||
Сообщение было отмечено Stekachev как решение
Решение
Попробуйте вызвать функцию с именем в UNC-формате
1
|
||||||
|
757 / 306 / 190
Регистрация: 20.05.2016
Сообщений: 593
|
|
| 29.01.2017, 11:05 | |
|
Wi0M, реализация os.walk то же использует os.listdir и рекурсию, так что вряд ли прокатит
0
|
|
|
224 / 209 / 63
Регистрация: 26.05.2011
Сообщений: 363
|
||||||
| 30.01.2017, 04:13 | ||||||
|
Не знаю как в *nix системах, а в windows сообщение "no such file or directory.." появляется при очень длинном имени файла (больше 256 символов в win32 и 512 в win64).
Решения, кроме разбора результата выполнения
0
|
||||||
|
|
||||||
| 30.01.2017, 12:45 | ||||||
|
Возможен вот такой вариант:
Правда, порядок обхода оставляет желать лучшего - но это то, что пришло в голову на этот момент. Еще, как вариант, можно попробовать использовать непосредственно WinAPI для листинга директорий\файлов с тем же синтаксисом '\\\\?\\', который указал shsv. Для встроенных python функций он почему-то не работает (должен на windows отключать проверку корректности\допустимости пути), а вот с winAPI функциями по идее должен.
0
|
||||||
|
|
|
| 30.01.2017, 12:52 | |
|
----------------
PS: Впрочем, нет - предложенный вариант похоже ничем не отличается от того, что у ТС. Так что остается попробовать WinAPI.
0
|
|
|
757 / 306 / 190
Регистрация: 20.05.2016
Сообщений: 593
|
||
| 30.01.2017, 13:29 | ||
|
0
|
||
|
|
||||||
| 30.01.2017, 13:40 | ||||||
|
shsv,
А так:
1
|
||||||
|
757 / 306 / 190
Регистрация: 20.05.2016
Сообщений: 593
|
|
| 30.01.2017, 13:57 | |
|
Да, действительно, не работает. Жаль...
0
|
|
|
|
|
| 30.01.2017, 14:06 | |
|
shsv,
А действительно - если обернуть весь путь в os.path.realpath - то создание файла работает. Не знал. Спасибо за наводку :-) Добавлено через 7 минут Хотя вот более точный результат: 248 на полный путь каталога со слэшем в конце и 255 - на имя файла с расширением. Далее все-таки не позволяет.
0
|
|
|
757 / 306 / 190
Регистрация: 20.05.2016
Сообщений: 593
|
||||||
| 30.01.2017, 14:35 | ||||||
Сообщение было отмечено Stekachev как решение
Решение
Хм, вот это работает
2
|
||||||
|
|
||
| 30.01.2017, 18:07 | ||
|
Так что теория, описанная в доках microsoft, получается все-таки работает и для python функций: при использовании UNC нотации мы можем работать с путями общей длиной до 32767 символов (юникодных). НО при этом каждый компонент пути не должен превышать 255 символов. Так что обойти ограничение на длину имени файла в 255 символов все-таки нельзя, c чем я как-то безуспешно пытался бороться, неправильно истолковав возможности UNC :-)
0
|
||
|
0 / 0 / 0
Регистрация: 28.01.2017
Сообщений: 2
|
|
| 30.01.2017, 18:19 [ТС] | |
|
Большое спасибо! Всё получилось в UNC!
0
|
|
|
|
|
| 30.01.2017, 22:16 | |
Сообщение было отмечено Stekachev как решение
Решение
2
|
|
| 30.01.2017, 22:16 | |
|
Помогаю со студенческими работами здесь
16
Массив поддиректорий
Получение файлов из директории и поддиректорий Использование FileSystemWatcher для поддиректорий Как получить имя поддиректорий Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Программный отбор элементов справочника Номенклатура по группе 1С
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа.
В качестве фильтра для отбора справочника служит группа номенклатуры.
Отбор под наименованию группы (на. . .
|
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
|
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс.
Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
|
Программный отбор элементов справочника Сотрудники по перечислениям 1С
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа.
В качестве фильтра для отбора служит предопределенное значение перечислений.
Процедура. . .
|
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|