Не понимаю в чём проблема

Всё правильно работает, однако shutil.copy2(a, dir_res) не принимает мои значения и выводит ошибку:

Введите директорию копирования 1:E:\CFG
Traceback (most recent call last):
  File "C:\Users\zoodlePC\Desktop\second.py", line 27, in <module>
    shutil.copytree(a, dir_res)
  File "C:\Users\zoodlePC\AppData\Local\Programs\Python\Python310\lib\shutil.py", line 556, in copytree
    return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks,
  File "C:\Users\zoodlePC\AppData\Local\Programs\Python\Python310\lib\shutil.py", line 457, in _copytree
    os.makedirs(dst, exist_ok=dirs_exist_ok)
  File "C:\Users\zoodlePC\AppData\Local\Programs\Python\Python310\lib\os.py", line 210, in makedirs
    head, tail = path.split(name)
  File "C:\Users\zoodlePC\AppData\Local\Programs\Python\Python310\lib\ntpath.py", line 185, in split
    p = os.fspath(p)
TypeError: expected str, bytes or os.PathLike object, not NoneType

Вот код программы:

import os
import time 
import shutil

# получение имени папки:
time_s = time.time() # получение времени с начала эпохи
time_y = time.ctime(time_s) # преобразование секунд в нормальное время

# требуемые замены
time_y = time_y.replace(" ", "_") # замена недопустимых символов
time_y = time_y.replace(":", ".") #

# создание папки
directory = os.getcwd() # получаем местоположение программы
dir_res = os.mkdir(directory + "\\" + time_y) # создание папки с текущим временем

# сбор имён требуемых для архивации файлов
b = 1
i = 1
while i != 0:
    a = input("Введите директорию копирования " + str(b) + ":")
    b+=1

    if a == "Всё":
        break

    shutil.copy2(a, dir_res)

Ответы (1 шт):

Автор решения: tewboat

os.mkdir(directory + "\\" + time_y) возвращает None. Присвойте переменной значение os.path.join(os.path.abspath(directory), time_y) и все будет работать.

→ Ссылка