/ / Python: Symulowanie CSV.DictReader za pomocą OpenPyXL - python, excel, openpyxl

Python: Symulowanie CSV.DictReader za pomocą OpenPyXL - python, excel, openpyxl

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 № 1

Arkusze 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