Mam plik programu Excel (.xlsx), który próbuję analizować, wiersz po wierszu.Mam nagłówek (pierwszy wiersz), który ma garść kolumn tytułów, takich jak Szkoła, imię, nazwisko, e-mail, itp.
Kiedy przechodzę przez każdy wiersz, chcę móc powiedzieć coś takiego:
row["School"]
i odzyskaj wartość komórki w bieżącym wierszu oraz kolumnę z tytułem "Szkoła".
Przejrzałem dokumentację OpenPyXL, ale nie mogę znaleźć niczego wyjątkowo pomocnego.
Jakieś sugestie?
Odpowiedzi:
0 dla odpowiedzi № 1Arkusze Excela są znacznie bardziej elastyczne niż pliki CSV, więc nie ma sensu posiadanie czegoś takiego jak DictReader.
Po prostu utwórz pomocniczy słownik z odpowiednich tytułów kolumn.
Jeśli masz kolumny takie jak "School", "First Name", "Last Name", "EMail"
możesz stworzyć słownik taki jak ten.
keys = dict((value, idx) for (idx, value) in enumerate(values))
for row in ws.rows[1:]:
school = row[keys["School"].value