如何将列表转换为以下格式?

时间:2016-03-13 07:25:46

标签: python-2.7

我有一项任务是找到素因子。我希望我的输出格式为50="2*5*5"。  我以列表形式输出

FactorList=[2,5,5]

如何将其转换为50="2*5*5"

2 个答案:

答案 0 :(得分:1)

如果你只是想以这种格式打印FactorList,这里有一些简单的代码:

FactorList=[2,5,5]
print "50=" + str(FactorList[0]) + "*" + str(FactorList[1]) + "*" + str(FactorList[2])

这会将FactorList的每个元素转换为字符串并将其插入到打印输出中。

如果你想要一些更通用的东西,允许你输入任何这种长度列表,你可以试试这个:

def printInFormat (list):
    value = list[0]
    length = len(list)
    for index in range(1, length):
        value = value * list[index]
    string = str(value) + "="
    for index in range(length-1):
        string = string + str(list[index]) + "*"
    string = string + str(list[length-1])
    return string

FactorList=[2,5,5]

print printInFormat(FactorList)

此代码遵循相同的想法,但使用函数来概括它。我找到了列表的长度,并使用for循环查找整体值(50),另一个循环遍历所有元素并打印出来。

答案 1 :(得分:0)

假设s是列表,您可以使用如下代码:

s = [2, 5, 5]
print '*'.join(['%s'] * len(s)) % tuple(s)