重复元组内的元素

时间:2017-06-01 08:55:19

标签: python tuples

我目前正在研究一个可以从模型生成java域类的python脚本。在编写生成器时,我写了这一行:

# sb is a StringBuilder
sb.add('public void set%s(%s %s) {\n\tthis.%s = %s;\n}\n' 
    % (prop.name.capitalize(), prop.type, prop.name, prop.name, prop.name))

输出以下内容(包含prop.name = "name"prop.type = "String"):

public void setName(String name) {
    this.name = name;
}

我觉得重复prop.name 3次有点多余,我预见在这个脚本完成之前会写出更多这些行。我想知道是否有一种更清晰地编写元组的方法,可能类似于(..., prop.name * 3)

1 个答案:

答案 0 :(得分:3)

您可以使用新的字符串格式化程序:

sb.add(
    'public void set{capital_name}({type} {name}) {{\n\tthis.{name} = {name};\n}}\n'.format(
    capital_name=prop.name.capitalize(), type=prop.type, name=prop.name)
)