Массивы, необходимые для справки Python

#python #arrays #nested-loops

#python #массивы #вложенные циклы

Вопрос:

Я новичок в python, и у меня был простой скрипт для импорта некоторых данных файла Excel на мой SQL server. Поставщик, от которого мы получаем данные, изменил формат, и он больше не будет работать с моим скриптом.

Файл Excel содержит повторяющиеся строки имени сотрудника, местоположения и часов. В настоящее время я могу перебирать эти строки, но не могу понять, как суммировать часы для каждого сотрудника и местоположения.

Пример файла Excel

 Test User1, ABQ, 2
Test User1, ABQ, 4
Test User1, ABQ, 5
Test User1, BOS, 2
Test User1, BOS, 3
Test User2, MSP, 1
Test User2, MSP, 5
 

Думал о выводе в некотором массиве, подобном следующему
Массив пользователей, где

 Users[0] = [Test User1, ABQ, 11]
Users[1] = [Test User1, BOS, 5]
Users[2] = [Test User2, MSP, 6]
 

Шаги, о которых я думал.

  1. создайте массив
  2. проверьте, существует ли сотрудник и местоположение в массиве
  3. если не существует, добавьте имя сотрудника, местоположение и часы работы в массив
  4. в противном случае, если сотрудник и местоположение существуют, добавьте часы к существующему массиву часов

Существующий код

 # reading excel file in with pandas. jf is custom class for opening and reading the excel file into jf.techLog
    for i in jf.techLog.index:
        log = jf.techLog.loc[i].copy()
        # log variable contains the current excel sheet row data
        employees = [log['Technician'], log['City'], log['TotalHours']]
 

Комментарии:

1. Вы можете использовать dict, сохраняя первые два столбца в качестве ключа, и добавить значение. Позже вы можете преобразовать dict в массив, если хотите.