форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
3.1 KiB
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 : ['а', ' здесь', ' просто', ' строка']
Каждый элемент – это список элементов из соответствующей строки файла