1

我正在寻找用于在输入函数中打印文本和保存的 int 的语法。我正在制作一个使用动态术语询问用户数学问题的程序,我希望能够在同一行打印这些和一些文本。

我试过这段代码,希望参数可以像打印语句一样表示:

answer = int(input(oneTerm, '+', twoTerm, '='))

我也尝试使用这样的两条线:

print(oneTerm, '+', twoTerm, '=')
answer = int(input(''))

但是这个问题是在打印语句下面的行上接受输入,但我需要它在同一行上。

任何帮助是极大的赞赏!

4

3 回答 3

2

input()函数只接受一个字符串参数(而不是多个,如print())。使用字符串格式:

answer = int(input('{} + {} = '.format(oneTerm, twoTerm)))

{}占位符被替换为 的两个参数,.format()创建本质上相同的字符串来提示用户输入。

有关更多详细信息,请参阅str.format()方法文档。

于 2013-07-08T15:02:19.880 回答
1

这是一个非常古老的问题,但我想最好的解决方案是使用 F 字符串来更新方法。这是在 2016 年 12 月以 Python >=3.6 发布的(请参阅PEP 498)。

在一行中,它将是:

answer = int(input(F'{oneTerm} + {twoTerm} ='))

我想这是更新的方式,也是最易读的。你们如何看待 F 弦的可读性?非常好,对吧?

于 2021-01-11T18:31:07.307 回答
-1

而不是这些方法,只需尝试使用:

answer = input(oneTerm, '+', twoTerm, '=')
answer = int(answer)
于 2018-03-15T10:17:45.200 回答