2017-02-02 3 views
1

У меня возникли некоторые проблемы при работе с этим кодом:Помощи для начинающего Python - Основная функция

def sumList(nums): 
    sum = 0 
    for num in nums: 
     sum = sum + num 
    return sum 
print(sumList([5, 2, 4, 7]) 

    def numDict(): 
    num = dict() 
    num = 5 
    num = 2 
    num = 4 
    num = 7 

print(sumList([5, 2, 4, 7])) 

def main(): 
    nums = sumList() 
    print(num[5]) 
    print(num[2]) 
    print(num[4]) 
    print(num[7]) 

main() 

То, что я пытаюсь сделать, это проверить несколько раз SumList с основной функцией. Выше, числа складываются вместе, чтобы произвести 18. Я хочу включить основную функцию. Как я могу это сделать?

ответ

0

Хорошо, так что я не уверен на 100% того, что вы говорите, но если вы просто сказать, как, как я проверить SumList с основной функции, то вы можете сделать что-то вроде следующего:

testCases = [([1,2,3],6) , ([1,1,1],3), ([10,10,12], 32)] 
def main(): 
    for testCase, answer in testCases: 
     if sumList(testCase) != answer: 
      print("False") 
    print("Everything checks out") 

# then to actually call your main function like something similar to cpp 
if __name__ == '__main__': 
    main() 

Это соглашение if __name__ == '__main__':, как правило, вы можете получить доступ к основному вызову в python.

Если вам интересно узнать о функции main, есть действительно хорошая ссылка для стека here. Снова доложите о спасении. Используйте его сильно!

0

Как насчет чего-то подобного?

def sumList(nums): 
    sum = 0 
    for num in nums: 
     sum = sum + num 
    return sum 

def main(): 
    print("Test One:") 
    print(sumList([5,2,4,7])) 
    print("Test Two:") 
    print(sumList([1,2,3,4])) 
    print("Test Three:") 
    print(sumList([0.5, 0.5, 0.5, 0.5])) 

Это должно произвести такой вывод

Test One: 
18 
Test Two: 
10 
Test Three: 
2.0 
Смежные вопросы