输入中的打印语句返回"none
我正在做一个小程序,我想使用:
ans = int(input(print(multi,'x',num,'=')))
这个方法运行得很好,除了它在打印完内容后还会显示“none”。比如:
49 x 7 =
None
有没有办法去掉这个“none”?我也搜索过这个问题,但没有找到关于在输入中返回“none”的相关内容。
1 个回答
8
input
函数需要一个 prompt
字符串作为参数,这个字符串会自动显示出来。但是 print
函数返回的是 None
,而这个 None
就是被 input
打印出来的。所以你的代码其实是等同于:
prompt = print(...) # prompt == None
ans = int(input(prompt))
相反,你可以使用 str.format
来构建提示信息,然后直接传给 input
:
ans = int(input('{0}x{1}='.format(multi, num)))