Я пишу программу для вычисления суммы квадратов списка строк, представляющих собой числа, считанные из файла. Функции работают, когда не используются с файлом, что меня еще больше сбивает.
Файл представляет собой простой список [«1», «2», «3»]
После запуска программа, я получаю сообщение об ошибке:
ValueError: не удалось преобразовать строку в число с плавающей запятой: '["1", "2", "3"]'
Вот код:
def toNumbers(strList):
newList = []
for i in strList:
i = float(i)
newList.append(i)
return newList
def squareEach(nums):
newList = []
for i in nums:
i = i**2
newList.append(i)
return newList
def sumList(nums):
count = 0
for i in nums:
count += i
return count
def main():
file = open("listOfSquares", "r")
f = file.readlines()
print(sumList(squareEach(toNumbers(f))))
main()