2017-09-17 101 views
1
def sumOfStudentDigits(): 
    studentdigit = (studentdigit1 + studentdigit2 + studentdigit3 + studentdigit4 + studentdigit5 + studentdigit6 + studentdigit7) 

    studentdigit1=3 studentdigit2=6 studentdigit3=9 studentdigit4=3 
      studentdigit5=1 studentdigit6=0 studentdigit7=0 

我需要为七个变量分配七位数并将它们相加。在Python中添加和变量赋值

+0

你能澄清问题是什么吗?你试图构建什么类型的功能? – Kyle

+0

我是一个学生做一项任务,我必须让这个代码为程序来确定我是谁的时候我打开它 –

+0

当我尝试运行该程序,它出现了一个语法错误,我不知道我在做什么错误 –

回答

1

如果你的困惑是如何让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 = 0因为Python想知道sum是它使用它之前,我们可以使用sum之前,所以我们分配它0,以便我们可以从那里数起来。 请注意studentdigitlistlistofdigits有何不同? 您可以将任何名称的列表传递给函数,重要的是您使用的变量(即本例中的列表)名称在def myfunction(yourvariable):中的整个函数定义中使用。 Python替代你传入函数的函数,以获得函数中占​​位符名称的位置。然后,当你运行函数: 如

def myfunction(yourvariable): 
    # do stuff with yourvariable 
    myvariable = myvariable + 7 

somenumber = 2 
myfunction(somenumber) 
# now somenumber will equal 9 
+0

ive输入此代码,但我不明白如何划分代码示例如何greenfoot使用括号来分裂不同的代码。因为它仍然会出现语法错误 –

+0

什么是'greenfoot'?你被告知语法错误的线是什么? – toonarmycaptain

+0

他们的第一行是说我有一个语法错误 –

0

你也可以通过在整个学生数量和打破它的函数中。

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)) 
0

保持基本的东西。你需要分配七位数的学生号码,每个变量一个。

def sumOfStudentDigits(): 
    digit1 = 3 
    digit2 = 6 
    digit3 = 9 
    digit4 = 3 
    digit5 = 1 
    digit6 = 0 
    digit7 = 0 

然后加在一起:

print(digit1 + digit2 + digit3 + digit4 + digit5 + digit6 + digit7) 

注意变量赋值不能在同一行,并需要拿出的总和了。