我有一个字符串列表如下:
mylist = ['A', 'B', 'C', 'D']
用于给定字符串,例如
x = '1'
我希望mylist
中的某些元素与给定的字符串x进行字符串连接。我正在尝试创建另一个逻辑索引列表,如下所示:
ix = [False, True, False, True]
连接的预期输出应该是以下
result = ['A', 'B1', 'C', 'D1']
我是否知道使用这种逻辑索引的pythonic方法是为了得到这个结果而不是循环?
答案 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"