def sumOfStudentDigits():
studentdigit = (studentdigit1 + studentdigit2 + studentdigit3 + studentdigit4 + studentdigit5 + studentdigit6 + studentdigit7)
studentdigit1=3 studentdigit2=6 studentdigit3=9 studentdigit4=3
studentdigit5=1 studentdigit6=0 studentdigit7=0
我需要为七个变量分配七位数字,然后将它们添加在一起。
如果您的混乱是如何将studentdigit
S进入您的功能,则可以将它们传递到这样的功能中:
def sumOfStudentDigits(studentdigit1, studentdigit2, studentdigit3,
studentdigit4, studentdigit5, studentdigit6,
studentdigit7):
studentdigit = (studentdigit1
+ studentdigit2
+ studentdigit3
+ studentdigit4
+ studentdigit5
+ studentdigit6
+ studentdigit7)
我的建议是将所有这些数字存储在列表中,然后仅将该列表传递给该功能,然后在列表中迭代:
listofdigits = [studentdigit1,
studentdigit2,
studentdigit3,
studentdigit4,
studentdigit5,
studentdigit6,
studentdigit7]
def sumOfStudentDigits(studentdigitlist):
sum = 0
for digit in studentdigitlist:
sum += digit
return sum
print(sumOfStudentDigits(listofdigits))
我们必须在使用sum
之前设置sum = 0
,因为Python想要在使用它之前知道sum
是什么,因此我们分配了0
,以便我们可以从那里计数。请注意studentdigitlist
和listofdigits
有何不同?您可以将任何名称的列表传递给该函数,最重要的是,您在整个函数定义中使用了您在def myfunction(yourvariable):
中使用的变量(即在这种情况下列表)。python替代您将其置于功能中具有该占位符名称的位置。然后,当您运行该功能时:例如
def myfunction(yourvariable):
# do stuff with yourvariable
myvariable = myvariable + 7
somenumber = 2
myfunction(somenumber)
# now somenumber will equal 9
您也可以通过整个学生编号并将其分解在功能内部。
def sum_student_digits(student_id):
running_total = 0
for i in str(student_id):
running_total += int(i)
return running_total
print(sum_student_digits(12345))
保持基本的东西。您需要为每个变量分配七位学生编号,一个。
def sumOfStudentDigits():
digit1 = 3
digit2 = 6
digit3 = 9
digit4 = 3
digit5 = 1
digit6 = 0
digit7 = 0
然后将它们加在一起:
print(digit1 + digit2 + digit3 + digit4 + digit5 + digit6 + digit7)
请注意,变量分配不能在同一行上,需要在总和之前出现。