Данные из колонок excel в списки Python
У меня есть набор данных в excel, которые я хочу поместить в списки для дальнейшей работы с ними.
Я написал код, но при выводе списков заметил, что данные выводятся по одному символу а не ячейке
import openpyxl
book = openpyxl.open('EXCEL.xlsx', read_only=True)
sheet = book.active
Array = list()
ArrayName = list()
for row in range(1, sheet.max_row+1) :
number = sheet[row][0].value
names = sheet[row][1].value
Array += str(number)
ArrayName += str(names)
print(Array,ArrayName)
Вопрос: как сделать, чтобы данные записывались не по одному символу а целой ячейкой?
Ответы (1 шт):
Автор решения: Oopss
→ Ссылка
Для работы с таблицами, удобней использовать pandas
import pandas as pd
d=pd.read_excel('ttst.xlsx')
print(d)
A B
0 10 Влад
1 20 Дарья
2 30 Иван
3 40 Женя
4 50 Саша
5 60 Егор
6 70 Денис
7 80 Михаил
8 90 Слава
9 100 Женя
10 110 Петя
pandas использует эти же библиотеки для чтения xlsx, но дальнейшая обработка лучше в pandas
import openpyxl
book = openpyxl.load_workbook('ttst.xlsx', read_only=True)
sheet = book.active
Array = []
ArrayName = []
for row in sheet.iter_rows(min_row=2, values_only=True) :
Array.append(row[0])
ArrayName.append(row[1])
print(Array,ArrayName)
[10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110] ['Влад', 'Дарья', 'Иван', 'Женя', 'Саша', 'Егор', 'Денис', 'Михаил', 'Слава', 'Женя', 'Петя']