使用Python编辑Python脚本

使用Python编辑Python脚本,python,Python,我试图在Python脚本的源代码中永久地编辑变量 e、 g 到 e、 g 到 问题是捕获单个变量,扩展它并替换它,python文件的源代码可能非常大,而且多种多样。 这项工作可能已经完成,但似乎找不到太多 有什么想法、建议或建议吗 我现在的解决方案是: 我将在脚本文件的底部添加代码 e、 g 目前有效:)就这一点而言,Python源代码是一个文本文件,因此您几乎可以按常规方式打开它并读取/写入数据。我认为这不是一个令人惊讶的好主意,但如果您正在编写某种类型的安装程序…如果您是从模板生成的

我试图在Python脚本的源代码中永久地编辑变量


e、 g


e、 g


问题是捕获单个变量,扩展它并替换它,python文件的源代码可能非常大,而且多种多样。 这项工作可能已经完成,但似乎找不到太多

有什么想法、建议或建议吗


我现在的解决方案是: 我将在脚本文件的底部添加代码

e、 g


目前有效:)

就这一点而言,Python源代码是一个文本文件,因此您几乎可以按常规方式打开它并读取/写入数据。我认为这不是一个令人惊讶的好主意,但如果您正在编写某种类型的安装程序…

如果您是从模板生成的,您可以使用普通的旧字符串格式:

tmpl = """import foo

bar = 12345

myList = [
    1,
    2,
    %s
]

otherStuff = %s"""

# figure out the values that need to go there

with f = open(filename, 'w+'):
    f.write(tmpl % (item1, item2))
(或者,您也可以从文件中读取该字符串,而不是硬编码该字符串)


或者你可以用。

@radianthex:你的问题一点也不清楚。你说你正在尝试做某事,但不要说你尝试了什么或者为什么没有成功。您能否重新表述您的问题以使其更清楚?您是否正在尝试使用python修改python脚本?若然,原因为何?与物理修改源代码相比,
导入、扩展和使用它更容易。@Daniel:我知道,但我需要在源代码中进行更改,因为其他使用模块的人更愿意这样做。@RadiantHex如果您定期对Python源文件进行永久性更改,你应该考虑让你的程序更多的数据驱动。将相关部分存储在数据库中,并在运行时动态执行操作。以编程方式修改源文件是一个很大的代码味道。@Daniel:更改是一次性的,基本上代码需要根据一组配置在包中生成一组文件。谢谢您的回复。我已经考虑过了,不幸的是,我正试图支持尽可能多的脚本。只要列表/元组就可以了。
urlpatterns = patterns('core.views',
    url(r'^admin/', include(admin.site.urls)),
)
items = [
    'unicorn',
    'cats',
]
items = [
    'unicorn',
    'cats',
    'knights',
    'panthers',
]
urlpatterns += patterns('core.views',
    url(r'^admin/', include(admin.site.urls)),
)
tmpl = """import foo

bar = 12345

myList = [
    1,
    2,
    %s
]

otherStuff = %s"""

# figure out the values that need to go there

with f = open(filename, 'w+'):
    f.write(tmpl % (item1, item2))