通过socket.makefile在所选目录上创建文件,而不是当前脚本目录

时间:2016-06-04 15:05:45

标签: python file sockets makefile directory

我的代码中的部分是:

    def upload_action(client):
    """
     uploads the requested file by socket to server

     receives: socket - client socket
     returns: nothing
    """
       file, filename = get_file_and_filename(client.makefile('r'))
       write_to_file(file, filename)

我想制作文件并将其保存在选定目录中,而不是保存在当前脚本目录中。有可能吗?

例如,我想在c:\ heights \ files上创建文件。 我希望该文件由该目录中的client.makefile('r')创建。  怎么样?

1 个答案:

答案 0 :(得分:0)

默认情况下,工作目录来自运行脚本的位置 所有相对路径都相对于工作目录 文件名只是指向该工作目录中文件的相对路径。

如果您需要将文件写入任意目录,则需要提供文件名的绝对路径。

write_to_file("c:\\heights\\files\\"+file, filename)

如果您只使用该目录中的文件,则可以通过以下方式将工作目录更改为:

import os
os.chdir("c:\\heights\\files")

并按原样使用您的脚本。