定义方法-输出Dogcatcatdog

时间:2019-04-24 11:38:25

标签: python procedure

我尝试运行下面的代码。为什么代码不显示dogcatcatdog?在主程序中,我已定义a等于dog为字符串,b等于cat为字符串?我在下面做什么错了?我的理解是,它将为A和B分配dog和cat的值,然后打印返回值?

当前代码将打印出ABBA。如果我改变打印方法说 print abbaize('dog','cat')然后将打印出dogcatcatdog。为什么不能像下面的代码那样在main方法中定义它?

def abbaize(a ='dog', b ='cat'):
    return a + b + b + a
print abbaize('a','b')

我希望上面的代码可以打印dogcatcatdog?

1 个答案:

答案 0 :(得分:1)

更改此行:

print abbaize('a','b')

收件人:

print abbaize()

如果使用一行,它将用“ a”替换字符串“ dog”。 由于您已经在函数中声明了变量,因此无需将它们传递给函数。 也许为了更好地了解您,您也可以这样做:

def abbaize(a, b):
    return a + b + b + a
print abbaize('dog','cat')

如果您使用的是Python 3.x,则还需要将打印行更改为:

print(abbaize())