Python函数含input语句但运行时未弹出输入提示的问题咨询
问题分析与解决方案
嘿,我来帮你排查下为啥看不到输入提示!
核心问题:函数定义后未被调用
Python里函数仅仅是定义的话,内部代码是不会自动执行的——你写了def my_function(username, greetings):这段定义后,必须主动调用这个函数,里面的input和print代码才会运行。这就是你看不到输入提示的根本原因。
另外,你的代码还有个小冗余:你给函数声明了username参数,但在函数内部又用username = input(...)把传入的参数值覆盖了,这相当于这个参数没起到作用。下面给你两种修正方案:
方案一:让用户输入用户名(去掉多余的username参数)
如果你的需求是让用户输入名字,那函数不需要接收username参数,调整后加上函数调用即可:
def my_function(greetings): username = input("enter your name:") print("Hello %s , I wish you %s"%(username,greetings)) # 必须调用函数,传入你想设置的问候内容 my_function("a fantastic day!")
方案二:通过参数传递用户名(无需input)
如果想直接在调用函数时传入用户名,那可以去掉内部的input语句,直接使用参数值:
def my_function(username, greetings): print("Hello %s , I wish you %s"%(username,greetings)) # 调用时直接传入用户名和问候语 my_function("Bob", "happy holidays!")
现在运行修正后的代码,就能看到你预期的输入提示(方案一)或者直接输出问候内容(方案二)啦!
内容的提问来源于stack exchange,提问作者Stergios
相关产品推荐
相关产品推荐

