如何将二维数组中各子数组的元素拼接为字符串?
解决二维数组子元素拼接问题
针对你给出的二维数组:
T = [["w", 'b'],["y",'b','w'],["f","z"]]
要实现每个子数组内元素的拼接,核心逻辑是遍历每个子数组,对单个子数组使用join方法——因为join只能直接作用于一维可迭代对象(比如单个子数组),无法直接套在二维数组上。
方法1:列表推导式(简洁写法)
如果想得到由每个子数组拼接后的字符串组成的新数组(以空格分隔元素为例):
result = [' '.join(sub_array) for sub_array in T] # 输出结果:["w b", "y b w", "f z"]
如果不需要分隔符,直接拼接元素:
result = [''.join(sub_array) for sub_array in T] # 输出结果:["wb", "ybw", "fz"]
方法2:普通for循环(更直观)
如果不习惯列表推导式,用常规循环也能实现:
result = [] for sub_array in T: # 对每个子数组执行拼接,添加到结果列表 result.append(' '.join(sub_array))
额外需求:合并所有拼接结果为单个字符串
如果要把所有子数组的拼接结果连起来(比如得到"w b y b w f z"),可以嵌套一层join:
full_str = ' '.join([' '.join(sub_array) for sub_array in T])
内容的提问来源于stack exchange,提问作者Lex047
相关产品推荐
相关产品推荐

