我有两个相同的列表
len
。
list1=[0, 1, 1, 1, 0, 0, 0, 1]
list2=['ATT', 'TTC', 'TCC', 'CCC', 'CCA', 'CAA', 'AAA', 'AAG']
注:
1) 。每个列表中的元素数量各不相同,但两个列表始终具有相同的元素
len公司
。
2) 。
list1
仅包含整数
0
或
1
。它只能包含
0
s、 仅包含
1s
,或同时包含两者
0s
和
1秒
。
3) 。
list2
仅包含长度相同的字符串,也包括每个字符串
k
(
k
是索引
>0
),则,
list2[k][:-1]=list2[k-1][1:]
,意味着如果
k=2, list[k]='TCC', list[k][:-1]='TC', list[k-1]='TTC', list[k-1][1:]='TC'
。因此
列表2[k][:-1]=列表2[k-1][1:]
。
我想将字符串分组
列表2
基于其在
列表1
(对应:中的元素
列表1
和
列表2
共享相同的
index
)。如果
list1[n]==1
然后
list2[n-1]+list2[n][-1]
。如果
list1[n]==0, and list1[n+1]==0, do nothing
。
e、 g.中第一个整数1的对应字符串
列表2
是
'TTC'
然后
'ATT'
和
'TTC'
成为
'ATTC'
。列表2中第二个整数1的对应字符串为
'TCC'
然后
'附件'
(注:已合并),以及
'变矩器离合器'
成为
'ATTCC'
。然后
list1[3]==1
,则,
'ATTCC'
和
'CCC'
成为
'ATTCCC'
。
list1[7]==1
然后
'AAG' ('AAG'=list2[7])
需要与其前一个字符串分组,
'AAA'
,两者成为
'AAAG'
。你什么都不做的唯一条件是
n=0
和
n+1=0
。这就是为什么,
list1[4]==0
和
list1[4+1]==0
,则,
'CCA'
保持不变。
list1[5]==0
和
list1[5+1]==0
然后
list2[5]='CAA'
保持不变。
改造后,
这是我想要的输出。
newlist2=['ATTCCC', 'CCA', 'CAA', 'AAAG']
显然,代码不正确。
for i in range(1, len(list1)):
if list1[i]==1:
newlist2[i-1]+newlist2[i][-1]
else:
do nothing