【发布时间】:2023-04-01 02:44:02
【问题描述】:
我想使用模板字符串方法来替换字符串: 例如:
cfg['hdfs_location']=Template(cfg['hdfs_location']).substitute(**cfg)
有两个占位符 $table 和 $rows 可以替换 '/tmp/hive_perf_test/$table_table_$rows'
我可以替换的最后一个字符串 '$rows' 但 '$table' 是不可能的。 我收到此错误消息:
{KeyError}'table_table_'
非常感谢您的帮助。
【问题讨论】:
-
Template来自哪个图书馆? -
我猜你希望
$table被替换,但 Python 认为你希望$table_table被替换。 -
你可以在
**cfg中发布你的内容吗? -
简单 hack,将
idpattern从默认的[_a-z][_a-z0-9]*更改为例如[a-z][a-z0-9]*告诉 python_是模板变量名的结尾 -
或者你可以使用
${table}_table_${rows}
标签: python string substitution