在Python中从不同元组创建对
在下面找到一个团队列表,以及两个元组devTuple和baTuple。我想从元组创建一个Python新元组对Dev和BA。开发人员和BA应属于同一个团队在Python中从不同元组创建对,python,python-3.x,list,tuples,Python,Python 3.x,List,Tuples,在下面找到一个团队列表,以及两个元组devTuple和baTuple。我想从元组创建一个Python新元组对Dev和BA。开发人员和BA应属于同一个团队 teamlist = ["T1", "T2", "T3", "T4", "T5"] devTuple = ( 1, "Dev1", "T1", 2, "Dev2", "
teamlist = ["T1", "T2", "T3", "T4", "T5"]
devTuple = (
1, "Dev1", "T1",
2, "Dev2", "T2",
3, "Dev3", "T3",
4, "Dev4", "T3",
5, "Dev5", "T1",
6, "Dev6", "T3",
7, "Dev7", "T3"
)
baTuple = (
1, "BA1", "T1",
2, "BA2", "T2",
3, "BA3", "T3",
4, "BA4", "T3",
5, "BA4", "T3",
6, "BA4", "T1",
7, "BA4", "T1",
8, "BA4", "T2"
)
根据您的输入定义,这里有一种方法可以生成一个字典,使用团队作为键和每个团队的参与者列表
def joinOnTeams(at, bt):
rslt = dict()
def loadDict(t):
for i in range(2, len(t), 3):
tl = rslt.pop(t[i], [])
tl.append(t[i-1])
rslt[t[i]] = tl
loadDict(at)
loadDict(bt)
return rslt
然后执行jointeams(devTuple,baTuple)
,得到:
{'T3': ['Dev3', 'Dev4', 'Dev6', 'Dev7', 'BA3', 'BA4', 'BA4'],
'T1': ['Dev1', 'Dev5', 'BA1', 'BA4', 'BA4'],
'T2': ['Dev2', 'BA2', 'BA4']}
预期的输出是什么?将dev和ba存储为元组数组不是更有意义吗?同样,考虑到它是一个连续的元组而不是元组的元组,我们是否可以保证每三个元素都是一个有意义的组?@HenryEcker QWERTL,目标是我需要有一个Dev-BA对的列表,而不需要重复来自同一团队的相同Dev和BA。我们也可以将BA和DEV存储在数组中。我只是想把我的问题简化一点,以便更好understanding@SriChin你能结束你的问题,展示一下预期的输出是什么样子吗?