импортировать значение ячейки из xlsx в переменную python для всех строк

#python #openpyxl

#python #openpyxl

Вопрос:

Я хочу использовать Openpyxl для открытия файла xlsx. Перебирайте все ячейки в строке A и и их в класс объектов с именем «Students» одну за другой.

Openpyxl открывает файл — работает Класс «студенты» определен — работает при запросе возвращает правильную максимальную строку — работает

Я знаю, что мне нужно создать цикл, который перебирает строки, чтобы добраться до последней, но я не уверен, как к ней подойти.

что-то вроде:

 for row in rows:
   Student(student_id = 'A(whatever the row number is).value)
   increase row number by one
  

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

1. Это другой вопрос, чем #55631079

2. да, я немного изменил его, так как думал, что за него проголосовали так сильно, что я сделал что-то ужасно неправильное, поэтому я изменил свой код и выровнял его по потоку. Переполнение стека раньше было таким приятным сообществом для начинающих … теперь оно кажется довольно враждебным

3. Если это тот же вопрос, вам следует изменить первоначальный вопрос и уточнить, где вам нужна помощь.

4. его не видно выше

Ответ №1:

Этот способ был намного лучше. Отключите Openpyxl, откройте его из файла csv. В файле csv у меня есть строки с каждым отдельным битом информации в столбцах A, B, C, D, E

например. A1 = Поттер, Гарри B1 = Поттер C1 = Гарри … и т. Д

 import csv


#sorts all the student data into a class
class Students():
    def __init__(self,student_id, first_name,second_name,student_parent,parent_email):

        self.student_id = student_id
        self.first_name = first_name
        self.second_name = second_name
        self.student_parent = student_parent
        self.parent_email = parent_email


    def __repr__(self):
        return self.student_id   " "   self.first_name   " "  self.second_name   " "   self.student_parent   " "   self.parent_email


student_list = []

#opens the csv file, takes out the information and saves them in the Student Class
student_file = open('student_list.csv')
student_file_reader = csv.reader(student_file)
for row in student_file:
    row_string = str(row)
    row_parts1,row_parts2,row_parts3,row_parts4,row_parts5 = row_string.split(',')
    student_list.append(Students(row_parts1,row_parts2,row_parts3,row_parts4,row_parts5))

  

… и вот оно, все в форме объектов в списке идеально.