Junior — Middle
Дар кадом ҳолатҳо ба истифодаи генераторҳо барои ҳал кардани вазифаҳо афзалият медиҳед?
sobes.tech AI
Ҷавоб аз AI
Генераторҳо дар Python барои кор бо ҳаҷми калон ё низомҳое, ки намехоҳед онҳоро пурра дар хотира бор кунед, муфиданд. Онҳо имкон медиҳанд, ки итераторҳо эҷод шаванд, ки элементҳоро "дар ҳоли кор" ҳисоб мекунанд.
Ман генераторҳоро истифода мебарам:
- Вақте ки ман файлҳои калон ё ҷараёнҳои маълумотро кор мекунам.
- Вақте ки лозим аст, ҳисобкунии бегонаи элементҳои низом.
- Ман мехоҳам иҷроишро беҳтар кунам ва истеъмоли хотираро кам кунам.
Маслиҳати генератор:
def count_up_to(max):
count = 1
while count <= max:
yield count
count += 1
for number in count_up_to(5):
print(number)
Ин код шумораҳоро аз 1 то 5 мебарорад, бидуни эҷоди тамоми рӯйхат дар як вақт.