В настоящее время я пытаюсь использовать оператор if, который проверяет значения оценок, заданные в файле, который ранее считывался как номинальное значение. В настоящее время я не уверен, как данные должны быть прочитаны как конкретные целые числа, так как эти значения были ранее преобразованы в строковые значения в более ранней части назначения. С чего бы я хотел начать сначала?
В настоящее время мне удалось заставить программу читать файлы .txt, изначально созданные в начальной части, однако в настоящее время я не уверен, как обращаться с этой исходной программой в отношениипреобразование окончательных числовых значений обратно в нормальное состояние, и я не уверен, как правильно настроить его для проверки конечного фрагмента данных каждой конкретной записи.
Это данные, из которых программа извлекает:
Andrew,Marks,11.2,72.0
Betty,Franks,12.8,89.0
Connie,William,14.6,92.0
Donny,Ventura,9.9,78.0
Ernie,Turner,10.1,81.0
Fred,Smythe,8.1,75.0
Greg,Tucker,7.2,72.0
Henry,Zebulon,8.3,83.0
Ian,Fleming,4.2,72.0
Jan,Holden,7.7,84.0
Kit,Possum,7.9,79.0
Landy,Bern,10.3,93.0
Mona,Docker,11.3,98.0
Kevin,Niles,7.1,80.0
Pam,Stiles,10.9,87.0
Russ,Hunt,5.6,73.0
Программа, предназначенная для извлечения данных из файла и запуска его в операторе if, выглядит следующим образом:
infile = open('golf.txt', 'r')
golf = infile.readlines()
for elements in golf:
int(golf[elements[3]])
if golf[elements[3]] > 80:
print(elements, 'Score: Over Par')
elif golf[elements[3]] == 80:
print(elements, 'Score: At Par')
elif golf[elements[3]] < 80:
print(elements, 'Score: Under Par')
infile.close()
Я ожидал, что она напечатает отдельные списки, наряду с сообщением, что оценка была «выше номинальной». "," по номиналу "или" По номиналу "в зависимости от того, какое окончательное значение в каждом списке во внешнем списке, однако вместо этого я получаю эту ошибку:
Traceback (most recent call last):
File "C:/Users/joelc/PycharmProjects/Project2/File/JoelLab5Pt2.py", line 7, in <module>
int(golf[elements[3]])
TypeError: list indices must be integers or slices, not str