输入中的 print 语句返回“none"

2022-01-31 00:00:00 python python-3.x input

问题描述

我正在开发一个小程序,我想使用:

I am working on a little program and I want to use:

ans = int(input(print(multi,'x',num,'=')))

这很好用,除了在打印 print 语句后它说 none 之外.喜欢:

This works well except for the fact that after it prints the print statement it says none. like:

49 x 7 =
None

如果可能,如何删除无"?我也搜索了这个问题,但没有什么是关于在输入中返回 none 的.

How would on remove the "none" if possible? Also I did search this problem but nothing was about returning a none inside of an input.


解决方案

inputprompt 字符串作为参数,它会自动打印,但 print 返回 None;这是由 input 打印的.您的代码相当于:

input takes a prompt string as its argument, which it will print automatically, but print returns None; it is this that gets printed by input. Your code is equivalent to:

prompt = print(...) # prompt == None
ans = int(input(prompt)) 

改为使用 str.format 构建提示并将其直接传递给 input:

ans = int(input('{0}x{1}='.format(multi, num)))

相关文章