Или сделать хотя бы какой-то контраст между ними?
def cickle():
lst = []
for i in range(10001):
if i % 2 == 0:
lst.append(i)
return lst
def generator():
lst = [i for i in range(10001) if i % 2 == 0]
return lst
assert cickle() == generator() # проверяем что вывод функций одинаков
%timeit cickle()
390 µs ± 5.3 µs per loop (mean ± std. dev. of 7 runs, 1,000 loops each)
%timeit generator()
318 µs ± 8.28 µs per loop (mean ± std. dev. of 7 runs, 1,000 loops each)
from bs4 import BeautifulSoup
data = '''
<td class="p3">
<div data-tooltip='QWERTY' class='ToolTip'>12345</div>
</td>'''
soup = BeautifulSoup(data,'html.parser')
div = soup.find('div') # тут вы уж сами найдите нужный вам div, я просто моделирую типа мы его нашли.
tag = 'data-tooltip'
print(div.attrs[tag])