使用元组列表加入String

时间:2016-10-25 13:43:29

标签: python

需要帮助将String对象与元组列表连接起来:

输入:

My_String = 'ABC | DEF | GHI'
My_List = [('D1', 2.0), ('D2', 3.0)]

预期输出:

'ABC | DEF | GHI | D1 | 2.0'
'ABC | DEF | GHI | D2 | 3.0'

我尝试连接,但是它使用元组中的元素进行交叉产品,结果如下:

[
['ABC | DEF | GHI|D1'
'ABC | DEF | GHI | 2.0']
['ABC | DEF | GHI|D2'
'ABC | DEF | GHI | 3.0']
]

4 个答案:

答案 0 :(得分:3)

试试这个:

for name, value in My_List:
    print(' | '.join((My_String, name, str(value))))

答案 1 :(得分:2)

您可以使用模板,然后使用format

My_String = 'ABC | DEF | GHI'
My_List = [('D1', 2.0), ('D2', 3.0)]

template = My_String + ' | {} | {}'

for i,j in My_List:
    print(template.format(i,j))

输出:

ABC | DEF | GHI | D1 | 2.0
ABC | DEF | GHI | D2 | 3.0

答案 2 :(得分:1)

对于您拥有的字符串和元组,以下是解决问题的简单易懂的方法

the_string = "ABC | DEF | GHI"
the_list = [('D1', 2.0), ('D2', 3.0)]
#you need to loop through the tuple to get access to the values in the tuple
for i in the_list:
    print the_string, " | "+ str(i[0])+" | "+ str(i[1])

答案 3 :(得分:0)

使用format和元组解包的组合:

print map(lambda x: "{} | {} | {}".format(My_String, *x), My_List)