2017-09-17 98 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) 

注意變量賦值不能在同一行,並需要拿出的總和了。