在我使用的其中一个 linux 应用程序的脚本中,我看到“@”符号之间的单词,例如@devel@
, 和@gtk_major_version@
. 我想知道它们被称为什么,它们在 Python 中的功能,以及为什么脚本具有“.in”扩展名而不是“.py”。
1 回答
5
正如评论中提到的,这不是 Python 语法。相反,包含在其中的字符串@
是模板变量,将由流行的Meson 构建系统填充,例如在许多使用 GTK 的项目中。
在这种情况下,模板将在构建时用于生成一个名为 just piper
(已.in
删除)的脚本,类似于 autoconf 从模板生成文件的方式,模板变量替换为由构建系统确定的值。
使用构建配置系统生成 Python 脚本有点不寻常,但也并非闻所未闻。我确定我以前也做过同样的事情,尽管使用了 autoconf。
于 2019-10-08T10:25:13.757 回答