如何使用for语句多次运行已定义的函数以使返回复合?

2024-09-30 04:35:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我对Python还很陌生,并且有一个定义的函数可以将数字加倍。我想用for语句把数字翻三倍。这是danbader的Python基础第6.3课的内容。不知什么原因,这件事把我难住了。你知道吗

下面,我尝试添加: number=for语句后面的number*2,但结果是 20 40 80个

def doubles(number):
    """Takes one number as its input and doubles it."""
    double = number * 2
    return double


number = 5


for x in range(0, 3):
    print(doubles(number))

实际结果如下: 10 10 10个

预期结果如下: 10 20 40个


Tags: 函数number内容for定义def原因数字
3条回答

你需要像这样把数字加在一起。 “number=number+number”简写为“number+=number” 最好的, 我希望你这样写的时候更容易看出来。你知道吗

number = 5
for x in range(0, 3):
    double =  number * 2
    print(double)
    number += number

听起来您希望number(全局的)保留调用doubles的结果;所以要显式地这样做:

for x in range(0,3):
    number = doubles(number)
    print(number)
def doubles(number):
    """Takes one number as its input and doubles it."""
    double = number * 2
    return double


number = 5


for x in range(0, 5):
    print(doubles(number))
    number=doubles(number)

相关问题 更多 >

    热门问题