我正在尝试使用reduce()将输入单词['hdjk','salsap','sherpa']的列表转换为输出:'hdjk salsap sherpa'
这是我要处理的代码:
from functools import reduce
input_list = ['hdjk', 'salsap', 'sherpa']
list(reduce(lambda x,y: x+" "+y, input_list)) # This gives irrelevant output
我也尝试过这个:
xinpl = [x.split() for x in input_list]
list(reduce(lambda x,y: x+" "+y, xinpl))
此代码连接了input_list中的所有元素,并且对我有用
print(" ".join(input_list))
我查看了其他类似的线程,并做了很多尝试: Make List to String Python
我仍然是一个学习者。上师可以帮忙吗?
答案 0 :(得分:1)
代码的reduce
部分工作正常。唯一的问题是它返回一个字符串,然后将其转换为列表。只需删除list
中的list(reduce(...))
,它就会按预期运行。
>>> from functools import reduce
>>> input_list = ['hdjk', 'salsap', 'sherpa']
>>> reduce(lambda x,y: x+" "+y, input_list)
'hdjk salsap sherpa'
答案 1 :(得分:0)
input_list = ['All','you','have','to','fear','is','fear','itself']
from functools import reduce
string1 = str(reduce(lambda x,y: x + " " +y, input_list))
print(string1)