在Python3.5.1中混合关键字和默认参数

2024-06-16 09:34:39 发布

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

我是一个新手,通过在线练习册学习在线python类。我似乎不知道如何像下面的示例那样显示输出:

问题说明: 写一个函数number of pennies(),它返回给定美元数和(可选)便士数的硬币总数。例:5美元6便士可换回506英镑。

以下是我所拥有的:

def number_of_pennies(dollars = (),pennies=())

    return number_of_pennies
print(number_of_pennies(5, 6)) # Should print 506
print(number_of_pennies(4))    # Should print 400

多亏你的帮助,我才改成这样:

def number_of_pennies(dollars = 0,pennies=0):
    number_of_pennies= (dollars * 100) + pennies
    return number_of_pennies
print(number_of_pennies(5, 6)) # Should print 506
print(number_of_pennies(4))    # Should print 400

Tags: of函数示例numberreturndef硬币print
1条回答
网友
1楼 · 发布于 2024-06-16 09:34:39

调用方不提供值时使用默认参数。那么,违约应该是什么?在您的情况下,如果用户不提供美元,零美元似乎是一个合理的选择。硬币也一样。因为number_of_pennies(4)应该是400,所以您知道他们希望美元是第一个参数。剩下的只是数学题。

number_of_pennies只是函数的名称,返回这个名称很奇怪。实际上,当您尝试它时,您会得到类似<function number_of_pennies at 0x7ff4e962d488>的结果,这意味着函数返回了它自己的函数对象。而是返回您计算的数据。。。那更有用!

>>> def number_of_pennies(dollars=0, pennies=0):
...     return dollars * 100 + pennies
... 
>>> print(number_of_pennies(5,6))
506
>>> print(number_of_pennies(4))
400

相关问题 更多 >