我觉得这辆自行车除了车座和车把外,我什么都有。以我对这门语言的理解,我还没有 “座位”和“车把”的名称,而不是“转动轮子的手的东西”和“我们必须站起来骑这个东西吗?”你知道吗
我有一个包含ID、target和tag的元组的列表。ID和目标配对,用于可能导致通过或失败的作业队列。你知道吗
如果ID通过,我希望从列表中删除包含该ID的所有其他元组,从而允许刷新的列表继续迭代。如果ID失败,我只希望尝试的ID和它的元组元素从列表中删除——给相同的ID(包含该ID的元组)一个尝试另一个目标的机会。你知道吗
下面,我发布了所需的结果、许多编码尝试中的一个,以及与此问题相关的其他几个StackOverflow帖子。我的编码 试图解决这个问题很可能是拙劣的尝试。我对列表的理解是有限的,但我觉得这在这里可能有用。我已经 也考虑使用字典。你知道吗
相关问题:
编码尝试
s,m,l = ("s","m","l")
list = [(11, '853', s), (12, '853', s), (13, '853', m),
(11, '421', l), (12, '421', l), (13, '421', s)]
passlist=[]
faillist=[]
jobfail = 13
jobpass = 11
def process(list):
for e in list:
if jobfail in e:
print("jobfail:", e)
faillist.append(e)
list.pop()
continue
if jobpass in e:
print("jobpass:", e)
passlist.append(e)
list.pop()
print("list is now:", list)
return passlist,faillist
print("original list:", list)
process(list)
print("passlist:", passlist)
print("faillist:", faillist)
print("final list:", list)
期望的结果
('original list:', [(11, 853, 's'), (12, 853, 's'), (13, 853, 'm'), (11, 421, 'large'), (12, 421, 'large'), (13, 421, 's')])
Processing 11 -> 853
('jobpass:', (11, 853, 's'))
('passlist:', [(11, 853, 's')])
('faillist:', [])
Any tuple with id = 11 is removed:
('list is now:', [(12, 853, 's'), (13, 853, 'm'), (12, 421, 'large'), (13, 421, 's')])
Processing 12 -> 853
('jobpass:', (12, 853, 's'))
('passlist:', [(11, 853, 's'), (12, 853, 's')])
('faillist:', [])
Any tuple with id = 12 is removed:
('list is now:', [(13, 853, 'm'), (13, 421, 's')])
Processing 13 -> 853
('jobfail:', (13, 853, 'm'))
('passlist:', [(11, 853, 's'), (12, 853, 's')])
('faillist:', [(13, 853, 'm')])
We had a failure, so let's try the next pairing:
('list is now:', [(13, 421, 's')])
Processing 13 -> 421
('jobpass:', (13, 421, 's'))
('passlist:', [(11, 853, 's'), (12, 853, 's'), (13, 421, 's')])
('faillist:', [(13, 853, 'm')])
('list is now:', [])
目前没有回答
相关问题 更多 >
编程相关推荐