Аватар для Banonanelly
91 / 22 / 35
Регистрация: 29.06.2016
Сообщений: 96

Объединить содержимое папок при совпадении имён после переименования

03.08.2016, 11:07. Показов 1251. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть такая структура папок:
Code
1
2
3
4
5
6
7
# 2016-01-02 Folder 1
#   subfolder 1
#   subfolder 2
# 2016-05-03 Folder 1
#   subfolder 3
# 2016-04-07 Folder 2
#   subfolder 4
Нужно получить такую:
Code
1
2
3
4
5
6
# Folder 1
#   subfolder 1
#   subfolder 2
#   subfolder 3
# Folder 2
#   subfolder 4
Написал такой скрипт:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
import os
import re
 
basedir = os.path.dirname(os.path.abspath(__file__))
 
p = re.compile(ur'^\d{4}-\d{2}-\d{2} (.*)')
 
for fn in os.listdir(basedir):
    if not os.path.isdir(os.path.join(basedir, fn)):
        continue
    m = re.search(p, fn)
    if m:
        os.rename(os.path.join(basedir, fn), os.path.join(basedir, m.group(1)))
Получаю ошибку:
Code
1
> WindowsError: [Error 183] Cannot create a file when that file already exists
Помогите дописать скрипт, чтобы он перемещал содержимое папки при совпадении имён.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.08.2016, 11:07
Ответы с готовыми решениями:

Ошибка при совпадении имен
Добрый день всем. Можете пожалуйста подсказать, не могу разобраться. При совпадении в графе наименований не проходит запись, даже если я ее...

Какие функции будут работать при совпадении имен?
Так получилось, что есть три файла, которые в зависимости от наличия подключаются в заголовок. Структура сайта модульная, модули лежат...

При совпадении одинаковых имен просуммировать количество для определенного поля
Всем привет. Я добавляю данные в одну таблицу и идет добавление сразу в другую же (что то типо склада всего) Так вот как сделать что если...

1
757 / 306 / 190
Регистрация: 20.05.2016
Сообщений: 593
03.08.2016, 21:36
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import os
import shutil
import re
 
basedir = os.path.dirname(os.path.abspath(__file__))
 
p = re.compile(r'^\d{4}-\d{2}-\d{2} (.*)')
 
for name in os.listdir(basedir):
    srcname = os.path.join(basedir, name)
    
    if not os.path.isdir(srcname):
        continue
  
    mo = re.search(p, name)
    if mo:
        dstname = os.path.join(basedir, mo.group(1))
        try:
            os.mkdir(dstname)
        except OSError:
            pass
  
        for src in os.listdir(srcname):
            shutil.move(os.path.join(srcname, src), dstname)
  
        os.rmdir(srcname)
Вы только проверьте на чём не жалко - мало ли чего
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.08.2016, 21:36
Помогаю со студенческими работами здесь

Копировать файлы в папки при совпадении имен файла и папки
Добрый день. Задача такая, есть папка в которой содержатся файлы, каждый файл с уникальным именем, например "file1.txt",...

Как объединить ячейки во втором столбце при совпадении значений в первом столбце
Здравствуйте. Помогите плиз. В таблице есть повторяющиеся значения в первом столбце (код товара) и разные значения во втором...

Ошибка при считывании имен папок
Добрый день! У меня в дирректории большое количество папок с именами типа: 1, 2, 3 ... 1000, 1001 ... и я считываю их с помощью метода...

Ошибка при сборке проекта после переименования класса
Всем доброго времени суток!Мне нужна помощь в создании приложений на Андроид.Недавно я установил эклипс и установил туда ADT(Android...

Программа для переименования папок - Перемещение между томами не действует
здравствуйте форумчане у меня накопилась куча папок и я решил не переименовывать их по отдельности а сделать это алгоритмом (за одно и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru