我尝试运行下面的代码。为什么代码不显示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?
答案 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())