习题解析之:奇偶求和
【问题描述】
输入一个完全由数字字符组成的字符串s,分别统计其中出现的奇数和偶数字符数值之和
如输入123456789
输出oddsum=25,evensum=20
示例
输入:
123456789
输出:
oddsum=25,evensum=20
【编程思路1】
用循环 for c in s: 遍历输入数字串 s 中的每个数字,若 int(c) 是奇数,则累加到奇数和 oddsum ;若是偶数,则累加到偶数和 evensum。
编写的源程序如下:

【编程思路2】
也可以直接用内置函数 sum() 对数字串 s 中的数字进行累加求和。
例如,设字符串 s = '123456789'
则 print(sum(int(c) for c in s)) 的输出结果为 45,它是对数字串 s 中的全部数字累加求和;
print(sum(int(c) for c in s if int(c) % 2 == 1)) 的输出结果为 25,它是对数字串 s 中的全部奇数数字累加求和;
print(sum(int(c) for c in s if int(c) % 2 == 0)) 的输出结果为 20,它是对数字串 s 中的全部偶数数字累加求和;
编写的源程序如下: 
浙公网安备 33010602011771号