我正在尝试制作一个简单的Python游戏“高或低”,用户想到一个介于1和100之间的数字,然后计算机尝试猜测它。对于每个猜测,用户键入“H”、“L”或“C”(分别表示“较高”、“较低”或“正确”)。计算机的第一个猜测总是50。代码如下:
first_guess = 50
print("I guess {}".format(first_guess))
h_l_c = input("Higher, lower, or correct?: ").strip().lower()
def guess_c():
win = "I WON!"
if h_l_c == "c":
return win
guess_c()
所以不管怎样,我运行这个,我得到:
I guess 50.
Higher, lower, or correct?:
然后我键入c。现在,据我所知,因为h_l_c
被定义为"c"
,函数guess_c()
应该运行,Python应该执行函数并打印"I WON!"
。不幸的是,什么都没有发生。你知道吗
我对Python非常陌生,我一直在努力理解函数。我哪里出错了?你知道吗
您的
guess_c
运行良好,但请注意您正在“返回”一个值。相反,只需在if块中打印它。像这样:调用
guess_c
时返回win
,而guess_c
不会打印字符串:您没有打印
guess_c()
调用返回的结果,您只是返回win
,因此win
字符串不会写入stdout。你知道吗相关问题 更多 >
编程相关推荐