У меня есть файл Excel с разными разделами, каждый из которых имеет свой заголовок, которому я указываю его имена (к ним также прикреплен номер во втором столбце). При первом подходе я хочу прочитать и распечатать на экране ячейки каждого раздела. Вот код, который я использовал:
section_headers = [ 'LIBROS', 'CAPÍTULOS DE LIBROS','ARTÍCULOS CIENTÍFICOS (ORIGINALES Y DE REVISIÓN)', 'ARTÍCULOS DE DIVULGACIÓN','PONENCIAS PRESENTADAS','CARTELES PRESENTADOS EN CONGRESOS', 'CURSOS IMPARTIDOS','SEMINARIOS IMPARTIDOS','PROGRAMAS DE RADIO Y TV','PODCASTS','SOFTWARE', 'PATENTES', 'MODELOS DE UTILIDAD', 'PROTOTIPO', 'PRÁCTICAS PROFESIONALES', 'SERVICIO SOCIAL', 'TESIS','OTROS (Ej. Manuales, procesos)']
def process_excel(file_path, section_headers):
df = pd.read_excel(file_path, skiprows=2)
sections = {}
current_section = None
section_data = []
for idx, row in df.iterrows():
if any(header in str(row[0]) for header in section_headers) and isinstance(row[1], (int, float)):
if current_section is not None:
sections[current_section] = pd.DataFrame(section_data)
current_section = row[0] # The first column is the section name
section_data = [] # Reset data for the new section
else:
# Add row data to current section
section_data.append(row)
if current_section is not None:
sections[current_section] = pd.DataFrame(section_data)
for section, data in sections.items():
print(f"\nSection: {section}")
print(data)
У меня есть файл Excel с разными разделами, каждый из которых имеет свой заголовок, которому я указываю его имена (к ним также прикреплен номер во втором столбце). При первом подходе я хочу прочитать и распечатать на экране ячейки каждого раздела. Вот код, который я использовал: [code]section_headers = [ 'LIBROS', 'CAPÍTULOS DE LIBROS','ARTÍCULOS CIENTÍFICOS (ORIGINALES Y DE REVISIÓN)', 'ARTÍCULOS DE DIVULGACIÓN','PONENCIAS PRESENTADAS','CARTELES PRESENTADOS EN CONGRESOS', 'CURSOS IMPARTIDOS','SEMINARIOS IMPARTIDOS','PROGRAMAS DE RADIO Y TV','PODCASTS','SOFTWARE', 'PATENTES', 'MODELOS DE UTILIDAD', 'PROTOTIPO', 'PRÁCTICAS PROFESIONALES', 'SERVICIO SOCIAL', 'TESIS','OTROS (Ej. Manuales, procesos)']
if any(header in str(row[0]) for header in section_headers) and isinstance(row[1], (int, float)): if current_section is not None: sections[current_section] = pd.DataFrame(section_data)
current_section = row[0] # The first column is the section name section_data = [] # Reset data for the new section
else: # Add row data to current section section_data.append(row)
if current_section is not None: sections[current_section] = pd.DataFrame(section_data)
for section, data in sections.items(): print(f"\nSection: {section}") print(data) [/code] Теперь, когда я вызываю функцию: [code]process_excel(file_path='wherever the file is", section_headers) [/code] Я ничего не получаю. Я запускаю его в Google Colab. Панды и openpyxl я уже зарядил. Есть идеи, почему я ничего не вижу (даже сообщения об ошибке)?