Как можно перебрать определенную колонку в цикле?

Имеем DataFrame:

Unnamed: 0 FUL MAIL DRT RUM dt
4 4 Иванов5 [email protected] 1.05 3 2020-05-01
5 6 Иванов7 [email protected] 5.08 4 2020-08-05

Мне надо, пройтись по значениям колонки MAIL и подставить в адрес получателя.

То есть, в mailto: $mail подставить все значения из колонки MAIL по одному.


Ответы (2 шт):

Автор решения: strawdog

Есть несколько вариантов:

1.

for row in df.itertuples():
    print(row[4])
[email protected]
[email protected]

2.

for idx, row in df.iterrows():
    print(row[3])
[email protected]
[email protected]

3.

for addr in df["MAIL"].to_list():
    print(addr)
[email protected]
[email protected]

4й вариант - использовать метод apply к серии, но я бы не советовал так делать, поскольку это неканоническое использование метода, и вообще, так делать не следует.

→ Ссылка
Автор решения: MaxU

Если вопрос в том, как пройтись циклом по значениям pandas.Series, то здесь даже выдумывать ничего не нужно, т.к. Series является итерируемым объектом:

for x in df["MAIL"]:
    print(x)

Если же суть вопроса в том, как сформировать одну строку (например список отправки BCC) сразу со всеми адресами эл. почты, разделенными запятой или точкой с запятой, то стоит уточнить вопрос и привести пример ожидаемого результата.

→ Ссылка