右对齐功能问题

时间:2015-10-24 18:05:23

标签: python

我刚刚开始学习python,但我无法使用此功能。在此先感谢:)

所以这里是代码:

def RightAlign (text, textR):
text = str ("word")
textR = '{:>30}'.format(text)
'                        '
return print(textr)
#=============================#
print("What school do you go to")
School = str(input(""))
RightAlign(School)

这是错误:TypeError:RightAlign()缺少1个必需的位置参数:'textR'

再次感谢你。

1 个答案:

答案 0 :(得分:1)

您的RightAlign方法定义了两个参数,并且您只传递一个参数。我怀疑你只想传递一个参数。

所以将方法定义更改为:

def RightAlign (text):

此外,我注意到您在RightAlign方法中用str(word)覆盖了文本。我不知道这是否是您的故障排除的一部分,但您永远不会得到您想要的输出。所以我建议你删除该行。您的代码将如下所示:

def RightAlign (text):
    textR = '{:>30}'.format(text)
    return print(textR)

print("What school do you go to")
School = str(input(""))
RightAlign(School)

DEMO:

What school do you go to
school
                        school

一些小笔记有助于改进您的代码。您无需返回呼叫以按照您在此处的方式进行打印:

return print(textR)

相反,你可以这样做:

def RightAlign (text):
    return '{:>30}'.format(text)

然后当你打电话时,只需这样做:

print(RightAlign(School))

result = RightAlign(School)
print(result)