将 .py 保存到文件本身内的另一个目录中的脚本

script to save a .py into another directory within the file itself

假设我在名为 directory1 的目录中创建了一个名为 file.py 的文件。运行 file.py 时,有没有办法让我 file.py 将它自己的脚本作为 .txt 文件或 .py 文件保存到另一个目录,比如 directory2?

谢谢!

一般来说,如果您使用编辑器编写代码,您可以将其保存到另一个具有不同文件扩展名的目录中。 但是我猜你想在不同的目录中获得备份是对的吗?这取决于你的编辑器,现在大多数人都会这样做。

但是你肯定可以在你的文件中写这样的东西,它只是将它复制到你选择的目录中:

import os, shutil

if not os.access(dirname, os.F_OK):
    os.mkdir(dirname, 0o700)

shutil.copy(fname, dirname)

这段代码的作用是,如果目录不存在,它首先创建一个目录,jet,并赋予它读、写和执行权限。然后它复制 fname 的内容,其中包含文件本身的文件名,并将其复制到您刚刚创建的目录中。

但是为什么要将刚刚编写的最新代码复制到其他位置?

编辑:

为了跟踪您的工作,有更好的方法可以做到这一点,例如版本控制系统,如 darcs、subversion(又名 svn)或 gitorious(主要基于网络)。他们使用不同的版本号保存您的工作,并且您不必在每次达到里程碑时都更改文件名。如果您选择获取较早的版本,它们会帮助您打开分支,稍后加入它们并保持您的代码可执行。

有:

fname = "work_today.txt"

您可以将代码保存到新文件名,即使是与它包含的文件完全相同的代码。 您必须正确更改文件名,切断扩展名并连接新字符串。 –