【发布时间】:2016-07-28 11:35:53
【问题描述】:
我有两个变量:
query = "String: {} Number: {}"
param = ['text', 1]
我需要合并这两个变量,如果没有引号的字符串和数字,我需要保留引号。
结果="String: 'text' Number: 1"
我尝试使用 query.format(param),但它删除了“文本”周围的引号。我该如何解决?
【问题讨论】:
我有两个变量:
query = "String: {} Number: {}"
param = ['text', 1]
我需要合并这两个变量,如果没有引号的字符串和数字,我需要保留引号。
结果="String: 'text' Number: 1"
我尝试使用 query.format(param),但它删除了“文本”周围的引号。我该如何解决?
【问题讨论】:
您可以在生成器表达式中对param 中的每个项目使用repr,然后使用format 将它们添加到您的字符串中。
>>> query = "String: {} Number: {}"
>>> param = ['text', 1]
>>> query.format(*(repr(i) for i in param))
"String: 'text' Number: 1"
【讨论】: