Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

3.1 KiB

Жалнин Вадим А-01-23 Вариант ИКЗ - 19

По указанному преподавателем варианту контрольного задания обратитесь к индивидуальному заданию с таким номером в теме 7, разработайте функцию, на ее основе создайте модуль. Создайте второй модуль, в котором должны быть инструкции для ввода/создания исходных данных для проверки работы функции, вызов функции и отображение полученных результатов.

Разработайте функцию с аргументом – именем текстового файла с записанным в него объектом – совокупностью строк, чисел, списков и т.д. В каждой строке данные разделяются запятыми. Функция должна считывать объект из файла, формировать и возвращать список, в котором каждый элемент – это список  элементов из соответствующей строки файла. Сформированный список должен возвращаться в качестве результата функции. Проверить функцию на примере нерегулярной числовой матрицы.

Нерегулярная матрица, или рваная матрица, — это матрица, в каждой строке которой разное количество элементов. Рваные матрицы не используются в линейной алгебре, поскольку над ними нельзя выполнять стандартные матричные преобразования, но они полезны при вычислениях в виде массивов, которые называются рваными массивами.

"reader.py"
def read_file(filename):
    result = []
    file = open(filename, 'r')
    for line in file:
        parts = line.strip().split(',')
        result.append(parts)
    file.close()
    return result
"module2.py"
import reader
f = open("test.txt", "w")
f.write("""1,2,3
a,b,c,d
10,20,30,40,50
а, здесь, просто, строка""")
f.close()
data = reader.read_file("test.txt")
print(data)
for i in range(len(data)):
    print("Строка", i, ":", data[i])

вывод в терминал:

[['1', '2', '3'], ['a', 'b', 'c', 'd'], ['10', '20', '30', '40', '50'], ['а', ' здесь', ' просто', ' строка']]
Строка 0 : ['1', '2', '3']
Строка 1 : ['a', 'b', 'c', 'd']
Строка 2 : ['10', '20', '30', '40', '50']
Строка 3 : ['а', ' здесь', ' просто', ' строка']

Каждый элемент – это список  элементов из соответствующей строки файла