【问题标题】:How to concatenate these arrays of strings?如何连接这些字符串数组?
【发布时间】:2019-07-17 02:28:17
【问题描述】:

我希望能够将这些添加到数组中,所以我得到:

输入:

x = np.array(['C1', 'C2', 'C3'])
y = np.array(['C4', 'C5', 'C6'])

输出:

z = ['C1C4','C2C5','C3C6']

我尝试将它们加在一起:

输入:

str1 = 'Hello'
str2 = 'World'
print(str1 + str2)

输出:

HelloWorld

但这不适用于数组作为 put:

z = x + y

这只是将它附加到数组的末尾,因此可以使用一些帮助来解决这个问题。

谢谢,现在已经解决了:

z = np.array([a+b for a, b in zip(x, y)]) 

非常感谢@Redone R。

【问题讨论】:

  • 到目前为止你尝试了什么?

标签: python arrays


【解决方案1】:

这可以使用列表理解来解决

 z = np.array([a+b for a, b in zip(x, y)])

一种等效的方式,但这次没有列表理解:

 for a, b in zip(x, y):
    z.append(a+b)
 z = np.array(z)

解释:

代码同时遍历两个数组,连接每对元素并将它们写入结果数组

【讨论】:

  • @DebanjanB 感谢提及。我添加了更多解释
【解决方案2】:
def foo(str): 
    str = str.replace("'","")
    str = str.replace(",","")
    str = str.replace(" ","")
return str

z = list(zip(x,y))
newlist =[foo(str(word)) for word in z ]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-09
    • 2022-10-12
    • 1970-01-01
    相关资源
    最近更新 更多