Итак, согласно совету утиного ввода, вам не рекомендуется проверять типы на python, но просто проверьте, не удалась ли операция или не удалось выполнить операцию. В этом случае, как я могу суммировать список (главным образом) чисел, но не указывая строки.Содержит список python без строковых значений
sum([1,2,3,4,'']) #fails
sum(filter(lambda x: type(x)==int, [1,2,3,4,''])) #bad style
Почему у вас есть строки, смешанные с номерами? –
Я думаю, что это проницательный вопрос, потому что я по сути рассматриваю строки как «недостающие данные». Это, конечно, приводит к таким проблемам, как sum (filter (lambda x: type (x) == int, ['', '', ''])) == 0, тогда как это должно быть (скажем) Нет – user2667066
Если все строки в вашем списке «', то вы можете использовать' sum ([v для v в [1,2,3,4,' '], если v]) '. – kkpattern