我试图解决这个分配,当运行代码时,它会输出额外的输出。有谁能告诉我我哪里弄错了代码以及如何修复它?谢谢您!有时我想同时缩进和退格几行,我该怎么做?在
分配
创建一个程序,它有一个主函数和一个名为tester
的子函数。main
函数提示用户输入一个input
"Write something (quit ends): "
,并将此input
作为参数发送给子函数。在
定义子函数tester
,使其具有一个名为givenstring
的参数,该参数具有默认值Too short
。如果用户输入少于10个字符,程序将使用默认值,如果是10个或更多,它将打印usergiven
input
。如果用户输入"quit"
,程序将终止。正常工作时,程序将print
输出如下内容:
>>>
Write something (quit ends): what?
Too short
Write something (quit ends): What do you mean?
What do you mean?
Write something (quit ends): Ok thats it
Ok thats it
Write something (quit ends): I am out of here
I am out of here
Write something (quit ends): quit
>>>
测试字符串长度的最简单方法是使用函数len()
。
输出示例
写点什么(放弃结束):什么? 太短了 写点东西(结束):什么意思? 什么意思? 写点东西(退出结束):好的,就这样 好的,就这样 写点什么(退出结束):我要离开这里 我要离开这里了 写点东西(退出结束):退出
我的代码:
^{pr2}$我的代码输出:
Write something (quit ends): what? what? Too short Write something (quit ends): What do you mean? What do you mean? What do you mean? Write something (quit ends): Ok thats it Ok thats it Ok thats it Write something (quit ends): I am out of here I am out of here I am out of here Write something (quit ends): quit
输出应如下所示:
Write something (quit ends): what? Too short Write something (quit ends): What do you mean? What do you mean? Write something (quit ends): Ok thats it Ok thats it Write something (quit ends): I am out of here I am out of here Write something (quit ends): quit
看起来,您的代码结构不起作用,您希望使用原始的输入而不是输入。试试这个-
tester
只有一个参数:所以当你打电话的时候
^{pr2}$将
givenstring
替换为wrote
。在更改函数定义:
将函数定义移到
while
循环之外会更有效。在另外,调用
tester
时不带任何参数if __name__ == "__main__"
。您可以将整个while True
循环包装在def main():
中,并调用该:相关问题 更多 >
编程相关推荐