📜  Python中的列表总和(带有字符串类型)

📅  最后修改于: 2022-05-13 01:55:14.931000             🧑  作者: Mango

Python中的列表总和(带有字符串类型)

在Python中,行为类型不会因数据类型而改变。下面的示例是在字符串中包含整数类型的列表。所以,即使它在字符串中声明,我们也必须从列表中获取所有 int 类型的数字。

例子:

Input : list1 = [12, 'geek', 2, '41', 'for', 10, '8', 6, 4, 'geeks', 7, '10']
Output : 100

Input : list1 = [100, 'geek', 200, '400', 'for', 101, '2018', 
                               64, 74, 'geeks', 27, '7810']
Output :10794

我们使用Python中的 type() 和Python中的 isdigit() 来实现这一点。

# Python program to find sum of list with different
# types.
  
def calsum(l):
  
    # returning sum of list using List comprehension
    return  sum([int(i) for i in l if type(i)== int or i.isdigit()])
  
# Declaring list
list1 = [12, 'geek', 2, '41', 'for', 10, '8', 6, 4, 'geeks', 7, '10']
list2 = [100, 'geek', 200, '400', 'for', 101, '2018', 64, 74, 'geeks', 27, '7810']
  
# Result of sum of list
print (calsum(list1))
print (calsum(list2))