Форум сайта python.su
Короче, я хочу чтоб две папки обменялись названиями без посредника(без н-ной папки).:
a=('C://Users/User/Desktop/Вверх') b=('C://Users/User/Desktop/Низ') import os ee33=os.rename(c,a) c1=os.rename(b,a) c2=os.rename(a,b) c1.c2
FileExistsError: [WinError 183] Невозможно создать файл, так как он уже существует: 'C://Users/User/Desktop/Низ' -> 'C://Users/User/Desktop/Вверх'
Отредактировано vl (Ноя. 7, 2017 16:11:24)
Офлайн
a='C://Users/User/Desktop/Вверх' b='C://Users/User/Desktop/Низ' os.rename(a, 'C://Users/User/Desktop/Temp') os.rename(b, 'C://Users/User/Desktop/Вверх') os.rename('C://Users/User/Desktop/Temp', 'C://Users/User/Desktop/Низ')
Отредактировано FishHook (Ноя. 7, 2017 16:59:11)
Офлайн
без “посредника” не выйдет. a, b = b, a возможны изза особенностей работы пайтона с обьектами в памяти. ФС не позволяет такого. Вернее оно то наверняка и возможно, если работать непосредственно с таблицей файлов , а вот так, через os.rename точно не выйдет.
+ с путями у вас не все в порядке, ХЗ может оно и скушает такие пути, но лучше нормализовать их с помощью os.path.normpath или сразу вводить адекватные пути для вашей ОС.
[code python][/code]
Отредактировано PEHDOM (Ноя. 7, 2017 17:41:01)
Офлайн