Получение ошибки типа: ошибка замены() отсутствующего требуемого аргумента «dst» (pos 2). Как это исправить?

#python #typeerror

Вопрос:

Итак, это мой код

 import os
source = "test.txt"
destination = "/Users/Mac/Desktop/test.txt"

try:
    if os.path.exists(destination):
        print("There is already a file there.")
    else:
        os.replace((source,destination))
        print(source   " was moved.")


except FileNotFoundError:
    print(source   " file was not found!")
 

Все, что я пытаюсь сделать, — это переместить файл из его первоначального места назначения на рабочий стол.
При запуске он выдает следующую ошибку:

 TypeError: replace() missing required argument 'dst' (pos 2)
 

Любая помощь будет очень признательна. Я не очень разбираюсь в python. Спасибо.

Комментарии:

1. У вас есть дополнительный набор паренов os.replace((source,destination)) os.replace(source,destination) , в противном случае вместо передачи двух str аргументов вы передаете один tuple аргумент, который содержит два str

2. docs.python.org/3/library/os.html#os.replace Вам не нужно передавать источник и место назначения в кортеже..

3. Спасибо , я не знаю, как получилось, что я этого не заметил, лол.

4. Если бы вы сделали свое решение в качестве ответа в качестве ответа, а не комментария, я бы определенно отметил его как наиболее полезное.

Ответ №1:

Попробуйте использовать os.replace(source, destination) , source и destination должно быть два разных параметра os.replace . Смотрите документы здесь по адресу os.replace .