Python: возвращать значения из цикла без прерывания
Привет, у меня есть список людей, которые сгруппированы по месту. Я хочу создать новую переменную, которая дает число каждому человеку в зависимости от их места. Я хотел бы, чтобы мои данные выглядели так:
place individual
here 1
here 2
here 3
there 1
there 2
somewhere 1
somewhere 2
Я написал это:
nest="ddd", "ddd", "fff", "fff", "fff", "fff", "qqq", "qqq"
def individual(x):
i = 0
j = 1
while i < len(x):
if x[i] == x[i-1]:
print(j+1)
i = i + 1
j = j + 1
else:
print(1)
i = i + 1
j = 1
individual(nest)
Это распечатывает значения, которые я хочу, однако, когда я помещаю туда return, он выходит из цикла и возвращает только первое значение. Мне было интересно, как я могу вернуть эти значения, чтобы я мог добавить их к своим данным в качестве нового столбца?
Я читал про урожайность? но был не уверен, если это уместно. Спасибо за помощь!
Ура, Адам