【发布时间】:2015-12-23 05:44:04
【问题描述】:
这是一个额外的问题,我没有得到分数,我已经尝试了好几个小时。我在 Jython 工作。
def sumOfId():
number = requestNumber ("Enter Student ID Here")
现在我想将构成id 的各个数字加在一起。
【问题讨论】:
这是一个额外的问题,我没有得到分数,我已经尝试了好几个小时。我在 Jython 工作。
def sumOfId():
number = requestNumber ("Enter Student ID Here")
现在我想将构成id 的各个数字加在一起。
【问题讨论】:
简单。将字符串逐个字符取出,解析为int后相加。
def sum_of_id(student_id):
sum = 0
for num in student_id:
sum += int(num)
# print('Sum = %d' % sum)
return sum
【讨论】:
我会这样做:
def sum_digits(s):
return sum(int(digit) for digit in s)
number = requestNumber("Enter Student ID Here: ")
print(sum_digits(number))
去掉学生ID的提示,sum_digits()是一个更通用的函数,可以对任何序列进行操作,包括字符串、列表、元组、字典键等。前提是序列中的项目可以转换为整数与int(),它将返回项目的总和。
该函数使用生成器表达式迭代序列中的项目,将每个项目转换为整数,生成一个新序列,然后将其传递给 sum 以执行其所有项目的加法。
【讨论】: