Python 函数的结果太小。如何解决这个问题?
此函数的结果太小。我不知道问题在哪里,也不知道如何解决。请两个地址都写Python 函数的结果太小。如何解决这个问题?,python,function,Python,Function,此函数的结果太小。我不知道问题在哪里,也不知道如何解决。请两个地址都写 def get_n_numbers(n): ''' Return the sum of n random numbers from 1 through 4''' import random total = 0 for i in range(n): mynumber = random.randint(1,4) total = total + mynumber r
def get_n_numbers(n):
''' Return the sum of n random numbers from 1 through 4'''
import random
total = 0
for i in range(n):
mynumber = random.randint(1,4)
total = total + mynumber
return total只需将
return
移动到循环外部,这样函数就不会在循环第一次通过后停止并返回:
def get_n_randoms(n):
''' Return the sum of n random numbers from 1 through 4'''
import random
total = 0
for i in range(n):
mynumber = random.randint(1,4)
total = total + mynumber
return total
sum_of_10 = get_n_randoms(10)
print(sum_of_10)
函数在第一次循环迭代时返回。因此,将return移到
for
循环块的外部,以返回所有循环的实际总和
def get_n_randoms(n):
''' Return the sum of n random numbers from 1 through 4'''
import random
total = 0
for i in range(n):
mynumber = random.randint(1,4)
total = total + mynumber
return total # < ---- right here see how it aligns with the start of the function block
def get_n_randoms(n):
''返回从1到4的n个随机数之和''
随机输入
总数=0
对于范围(n)中的i:
mynumber=random.randint(1,4)
总数=总数+我的号码
return total#<----在这里查看它如何与功能块的开头对齐
您的返回在for循环内,因此您不会进行多次迭代。因为您在for循环内有返回总数
。把它从循环中去掉。您的函数在遇到返回时立即中断,因此您的迭代次数不会超过1次。