我正在尝试创建一个程序,将自身复制到另一个目录中以供以后使用。它在我的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)
答案 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" )