Выведите только средние значения, сначала отрицательные, а затем положительные, без форматирования.
Мой код:
Код: Выделить всё
def calculate_averages(file_name):
negatives = []
positives = []
with open(file_name, 'r') as file:
for line in file:
try:
num = float(line.strip())
if num < 0:
negatives.append(num)
elif num > 0:
positives.append(num)
except ValueError:
continue # Skip lines that are not valid numbers
# Calculate the averages
neg_avg = sum(negatives) / len(negatives) if negatives else float('NaN')
pos_avg = sum(positives) / len(positives) if positives else float('NaN')
# Print the averages
print(neg_avg)
print(pos_avg)
calculate_averages('numbers.txt')
Я не понимаю, почему я ошибаюсь и как это исправить! Любая помощь и советы очень ценятся, спасибо!
Подробнее здесь: https://stackoverflow.com/questions/791 ... -the-error