驗證碼:怎樣才能讓這些代碼3個系更加乾燥
if len(group['elements']) > 0:
groups.append(group)
group = {'bla': '', 'elements': []}
在下面的例子中重複3次。我想把它放在1行(至少使它減少)。有可能嗎?那我該怎麼做?
collection_of_items = [
['strong', 'a', ['a'], '', 'strong', ['a'], ['a'], 'a', 'a', [], ''],
['strong', 'a', ['a'], '', 'strong', 'a']
]
groups = []
for items in collection_of_items:
group = {'bla': '', 'elements': []}
for item in items:
if hasattr(item, 'lower'):
if item == 'strong':
group['bla'] = item
elif item =='a':
group['elements'].append(item)
elif item == '':
# Make it DRY <---------------------------------------
if len(group['elements']) > 0:
groups.append(group)
group = {'bla': '', 'elements': []}
else:
if 'a' in item:
group['elements'].append(item[0])
else:
# Make it DRY <---------------------------------------
if len(group['elements']) > 0:
groups.append(group)
group = {'bla': '', 'elements': []}
# Make it DRY <---------------------------------------
if len(group['elements']) > 0:
groups.append(group)
group = {'bla': '', 'elements': []}
print(groups)
修改這些三線,
注意:做任何事情,但示例代碼結構不能改變
對不起,我的錯誤。
第一事物優先:*使用四個空格進行縮進*。但是,你不能把它包裝在一個函數中嗎? –
對不起。實際上我使用在線ide。這就是爲什麼2個空格。現在更新 –