使用给定字符串连接列表中的某些字符串元素

时间:2016-03-10 09:31:58

标签: python

我有一个字符串列表如下:

mylist = ['A', 'B', 'C', 'D']

用于给定字符串,例如

x = '1'

我希望mylist中的某些元素与给定的字符串x进行字符串连接。我正在尝试创建另一个逻辑索引列表,如下所示:

ix = [False, True, False, True]

连接的预期输出应该是以下

result = ['A', 'B1', 'C', 'D1']

我是否知道使用这种逻辑索引的pythonic方法是为了得到这个结果而不是循环?

1 个答案:

答案 0 :(得分:2)

使用zip() function将输入列表中的值与您的标记集合在一起,并使用conditional expression中的list comprehension根据标记进行连接:< / p>

>>> mylist = ['A', 'B', 'C', 'D']
>>> x = '1'
>>> ix = [False, True, False, True]
>>> [value + x if flag else value for value, flag in zip(mylist, ix)]
['A', 'B1', 'C', 'D1']

演示:

NServiceBus.Host.exe /scannedAssemblies:"NServiceBus.Core, Version=5.0.0.0, Culture=neutral, PublicKeyToken=9fc386479f8a226c" /scannedAssemblies:"NServiceBus.Host, Version=6.0.0.0, Culture=neutral, PublicKeyToken=9fc386479f8a226c"