在 Python ftplib 中的上传文件名称中使用变量

Using variable in a name of uploaded file in Python ftplib

我正在将文件推送到我的 FTP,并且我有

file = open(home_path + '\Desktop\' + checkuser + ' Report.txt', 'rb')
session.storbinary('STOR file.txt', file) 

我相信这是从我桌面上的文件复制内容并在 FTP 上创建一个文件 file.txt

我似乎无法在 FTP 上创建与我桌面上的文件名相同的文件名 (或任何 desktop/user),例如

session.storbinary('STOR' + home_path + '\Desktop\' + checkuser + ' Report.txt', file)

有办法解决这个问题吗?

*PS: 运行

sys.stdout = open(home_path + '\Desktop\' + checkuser + ' Report.txt', 'a')

工作得很好,它创建了一个名为 currentuser Report.txt.

的文件

我不确定我是否理解你的问题。但也许你想这样做?

session.storbinary('STOR ' + checkuser + ' Report.txt', file)

(假设 checkuser 值是文件名的一部分)

并注意 STOR 之后的 space(您的代码中缺少)。