Вы можете использовать itertools.product
, чтобы создать перекрестное произведение каждого из имен и положений гена, а затем join
их вместе в понимании списка для получения partitionList
:
import itertools
geneNameList = ['psaA', 'psbF', 'rpl36', 'rpoC1', 'psbK', 'atpB']
positionList = ['_1stpos', '_2ndpos', '_3rdpos']
partitionList = [''.join(gp) for gp in itertools.product(geneNameList, positionList)]
print(partitionList)
Вывод:
[
'psaA_1stpos', 'psaA_2ndpos', 'psaA_3rdpos',
'psbF_1stpos', 'psbF_2ndpos', 'psbF_3rdpos',
'rpl36_1stpos', 'rpl36_2ndpos', 'rpl36_3rdpos',
'rpoC1_1stpos', 'rpoC1_2ndpos', 'rpoC1_3rdpos',
'psbK_1stpos', 'psbK_2ndpos', 'psbK_3rdpos',
'atpB_1stpos', 'atpB_2ndpos', 'atpB_3rdpos'
]
Если вы хотите, чтобы =
в конце каждой строки, просто измените ''.join(gp)
на ''.join(gp) + ' = '
в понимании.