
2 / лр2
.pdfМИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ федеральное государственное автономное образовательное учреждение высшего образования
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»
ИНСТИТУТ НЕПРЕРЫВНОГО И ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ
Кафедра проблемно-ориентированных вычислительных комплексов Арифметические операции
ОЦЕНКА
ПРЕПОДАВАТЕЛЬ
Доцент,кандидат технических наук |
|
|
|
Чернышев С.А. |
|
|
|
|
|
должность, уч. степень, звание |
|
подпись, дата |
|
инициалы, фамилия |
Лабораторная работа № 2
по дисциплине: Технологии программирования
РАБОТУ ВЫПОЛНИЛА |
|
|
|
|
|
|
СТУДЕНТКА ГР. № |
Z0411 |
24.05.2023 |
|
М. В. Карелина |
||
|
|
|
|
|
|
|
|
|
номер группы |
|
подпись, дата |
|
инициалы, фамилия |
Студенческий билет № |
|
2020/3477 |
|
|
|
|
Санкт-Петербург
2023

Цель работы: познакомиться с основными способами работы с файлами
в Python.
Вариант 8.
Задание:
Имеется файл с целочисленными значениями, разделенные пробелами.
Найдите количество четных и нечетных чисел.
Текст кода:
def get_even_odd_count(file_name): even_count = 0
odd_count = 0
with open(file_name, 'r') as file: for line in file:
nums = line.strip().split() for num in nums:
if int(num) % 2 == 0: even_count += 1
else:
odd_count += 1 return even_count, odd_count
even_count, odd_count = get_even_odd_count('filename.txt') print('Even count:', even_count)
print('Odd count:', odd_count)
Созданный текстовый файл:
Результат выполнения:
Текст тестов: import unittest
from lr2 import get_even_odd_count class MyTestCase(unittest.TestCase):
def test_even_odd_count(self):
# Тест для проверки количества четных и нечетных чисел в файле with open('filename.txt', 'w') as file:
file.write('1 2 3 4 5 6 7 8 9 10')

even_count, odd_count = get_even_odd_count('filename.txt')
assert even_count == 5, f'Ожидалось 5 четных чисел, но получено
{even_count}'
assert odd_count == 5, f'Ожидалось 5 нечетных чисел, но получено
{odd_count}'
def test_only_even_numbers(self):
#Тест для проверки количества четных и нечетных чисел, когда все числа
вфайле четные
with open('filename.txt', 'w') as file: file.write('2 4 6 8 10')
even_count, odd_count = get_even_odd_count('filename.txt')
assert even_count == 5, f'Ожидалось 5 четных чисел, но получено
{even_count}'
assert odd_count == 0, f'Ожидалось 0 нечетных чисел, но получено
{odd_count}'
def test_only_odd_numbers(sels):
#Тест для проверки количества четных и нечетных чисел, когда все числа
вфайле нечетные
with open('filename.txt', 'w') as file: file.write('1 3 5 7 9')
even_count, odd_count = get_even_odd_count('filename.txt')
assert even_count == 0, f'Ожидалось 0 четных чисел, но получено
{even_count}'
assert odd_count == 5, f'Ожидалось 5 нечетных чисел, но получено
{odd_count}'
if __name__ == '__main__': unittest.main()
Результат тестов:
Вывод
Я ознакомилась с основными способами работы с файлами в Python.