Здравствуйте ,есть файл с ИНН сотрудников, заплатой за первое полугодие и за второе, нужно вывести ИНН сотрудника с наибольшей за за 1-е полугодие
Вот мой код но он выводит неверный ответ:
def salary():
infile = open("C:/Users/OWNER/Desktop/3/salary.txt","r",encoding="utf-8")
arr = []
arr1 = []
max = 0
num = 0
arr = infile.readlines()
for i in arr:
if i and i != "\n":
num = i.split(",")
for summ in arr1:
if (max<int(summ[1])):
max = int(summ[1])
num=summ
print(num[0])
salary()
Может быть проблема этом кусочке кода:
for i in arr:
if i and i != "\n":
num = i.split(",")
но без него программа совсем не работает :( Буду благодарна за любой совет, спасибо!
Ответы (2 шт):
Автор решения: Andrew Holovko
→ Ссылка
Создаете список списков для каждой строки, и далее определяете наиболее из них. Далее пример кода:
import csv
with open('file.txt', newline='') as file:
salaries = csv.reader(file, delimiter=',')
salaries = [[int(num) for num in lstt] for lstt in salaries]
max_salary = max(salaries, key=lambda x: x[1])
print(max_salary)
