首页 > 解决方案 > 如何用python计算文本中所有数字的总和?

问题描述

输入 essum magis 45 kohlrabi azuki bean 大蒜。蒲公英黄瓜-1花生豌豆花生水10.5菠菜茴香昆布玉米笋绿

输出 54.5

解释 45 + 10.5 -1 = 54.5

我还不允许导入包!我真的迷路了,我已经为此工作了 4 个小时

n = input('Enter an Alpha-Numeric String: ')
n_sum = 0
temp_num = ''
for i in n:
    if i.isalpha():
        if temp_num != '':
            n_sum = n_sum + int(temp_num)
            temp_num = 0
else:
    temp_num = str(temp_num) + str(i)

if temp_num != '':
    n_sum = n_sum + int(temp_num)
    temp_num = 0

print(n_sum) 

标签: python

解决方案


在空间上拆分句子。检查每个单词是否是一个数字。如果是,则转换为数字并添加到总数中:

n = input('Enter an Alpha-Numeric String: ')
n_sum = 0
for word in n.split():
    try:
        n_sum += float(word)
    except ValueError:
        # float() will throw an exception if not a number
        pass
print(n_sum)

推荐阅读