正在将代码从流程图工具移动到python,加载了一个有3个学生年龄的数组,想要得到3个年龄的总和,我是python的新手,想知道你是怎么做到的,运行我所拥有的错误,到目前为止,这是我的代码:
#g is my index, sample input was: 35,25,50
st_age = [0]*3
for g in range(0,3):
st_age[g] = int(input("Enter student age "))
g = 1
sum = 0
while g < len(st_age): #am I using this correctly?
sum = sum + st_age[g]
g + g + 1
print sum #I get a zero this way.
谢谢你的帮助,到目前为止阵列一直很棘手。
答案 0 :(得分:1)
你没有增加g。 g + g + 1
shoudl阅读g = g + 1
。
python中的索引也是从0开始的,因此你的起始值应该是g = 0
。
python也有一个整洁的内置sum
。
print sum(st_age)
所以你的固定代码可以读取:
st_age = [0]*3
for g in range(3):
st_age[g] = int(input("Enter student age "))
g = sum = 0
while g < len(st_age): #am I using this correctly?
sum = sum + st_age[g]
g += 1
print sum
或者使用列表理解和内置sum
:
st_age = [int(input("Enter student age ")) for _ in range(3) ]
print (sum(st_age)) #Note extra parentheses
我添加了额外的括号,因此你的代码在python 2和3中都可以正常运行。