В файле записаны данные о результатах сдачи экзамена. Каждая строка содержит фамилию, имя и количество баллов, разделенные пробелами:
<Фамилия> <Имя> <Количество баллов>
Вывести в другой файл фамилии и имена тех учеников, которые не прошли порог - 40б и надпись "Не пройден порог:"
отдельно как другое задание:
К предыдущей задаче добавить к полученному списку нумерацию, сократить имя до одной буквы и поставить перед фамилией и вывести данные в другой файл
Python
Помогите с инфой плиз. Python
1)
with open('input.txt', 'r') as fi, open('output1.txt', 'w') as fo:
f = True
for s in fi:
l = s.split()
if len(l) == 3:
if l[-1].isnumeric() and int(l[-1]) < 40:
if f:
fo.write('Не пройден порог:\n')
f = False
fo.write(l[0] + ' ' + l[1] + '\n')
2) with open('input.txt', 'r') as fi, open('output2.txt', 'w') as fo:
n = 0
for s in fi:
l = s.split()
if len(l) == 3:
if l[-1].isnumeric() and int(l[-1]) < 40:
if not n:
fo.write('Не пройден порог:\n')
n += 1
fo.write(str(n) + ' ' + l[1][0] + ' ' + l[0] + '\n')
Для решения первой задачи можно использовать следующий код:
```python
with open('input.txt', 'r') as f_in, open('output.txt', 'w') as f_out:
for line in f_in:
surname, name, score = line.split()
if int(score) < 40:
f_out.write(f'Не пройден порог: {surname} {name}\n')
```
Для решения второй задачи можно модифицировать код следующим образом:
```python
with open('input.txt', 'r') as f_in, open('output.txt', 'w') as f_out:
for i, line in enumerate(f_in, start=1):
surname, name, score = line.split()
if int(score) < 40:
short_name = name[0]
f_out.write(f'{i}. {short_name}. {surname}\n')
```
Здесь мы добавили переменную `i`, которая отвечает за номер строки, и использовали метод `enumerate()` для ее генерации. Также мы сократили имя до одной буквы и поменяли порядок вывода имени и фамилии.
```python
with open('input.txt', 'r') as f_in, open('output.txt', 'w') as f_out:
for line in f_in:
surname, name, score = line.split()
if int(score) < 40:
f_out.write(f'Не пройден порог: {surname} {name}\n')
```
Для решения второй задачи можно модифицировать код следующим образом:
```python
with open('input.txt', 'r') as f_in, open('output.txt', 'w') as f_out:
for i, line in enumerate(f_in, start=1):
surname, name, score = line.split()
if int(score) < 40:
short_name = name[0]
f_out.write(f'{i}. {short_name}. {surname}\n')
```
Здесь мы добавили переменную `i`, которая отвечает за номер строки, и использовали метод `enumerate()` для ее генерации. Также мы сократили имя до одной буквы и поменяли порядок вывода имени и фамилии.
Лёнька Валиев
Можно***** без CHAT GPT, а своей умной головой!??!?!
Лёнька Валиев
да, всё
Похожие вопросы
- Можете помочь! Нужен код для Python, что бы он заменял определенный текст в файле
- Помогите, пожалуйста, решить задачу Python
- Помогите написать программу на Python, моя версия кода на скрине, вроде всё работает, но автопроверка не проходит.
- Пожалуйста, помогите решить задачу на Python. Упражнения 57,58,59,60.
- Помогите решить задачу на Python. Никак не могу решить задачу, больше дня не могу найти ответ! Никакой код не работает.
- Прошу опытных программистов помочь с выбором курса Python для обучения
- Пожалуйста, помогите решить задачу на Python. Упражнение 124, 125, 146
- Помогите написать программу на python
- Помогите написать код в python
- Помогите решить задачку в Python (!)
1) 2)