【问题标题】:Format a list into a string Python将列表格式化为字符串 Python
【发布时间】:2017-10-16 18:44:28
【问题描述】:

我有这段代码可以交错两个单词并将新的交错单词作为元组输出,但我也需要它是一个原始字符串。

from itertools import zip_longest
def interleave(word1,word2):
    return ''.join(list(map(str, zip_longest(word1,word2,fillvalue=''))))

如果输入单词 cat 和 hat,则输出

('h', 'c')('a', 'a')('t', 't'). 

但我需要它来输出

hcaatt

我怎样才能把这个列表格式化成一个普通的字符串

【问题讨论】:

标签: python list tuples interleave


【解决方案1】:

使用itertools.chain.from_iterable()zip() 函数:

import itertools

w1, w2 = 'cat', 'hat'
result = ''.join(itertools.chain.from_iterable(zip(w2, w1)))

print(result)

输出:

hcaatt

【讨论】:

    【解决方案2】:

    你可以使用 reduce 来达到你的目标:

    word1, word2 = 'cat', 'hat'
    result = ''.join(reduce(lambda x, y: x+y, zip(word1, word2)))
    print(result)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-06-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多