从元组python中删除字符

时间:2016-07-07 11:46:48

标签: python

我在python中进行了数学测验。我的所有代码都运行正常但是当我打印问题时,它会用括号和逗号和撇号打印它们。

question = number1, '+', number2

这是我元组的名称:

answer = int(input("What is {}?".format(question)))

这就是我打印问题的地方:

What is (2, '*', 4)?

这就是我的输出的样子。 我想知道如何删除(,'',)。 感谢。

3 个答案:

答案 0 :(得分:2)

关于您的错误:

question = number1, '+', number2定义了一个包含3个元素的元组

示例:

>>> question = 2, '+', 4
>>> print(question)
(2, '+', 4)
>>> type(question)
tuple

使用"What is {}?".format(question),您可以从一个参数str构建questionformat方法将元组question转换为str并将其插入string。这就是为什么您的输出包含(')之类的元组。

>>> str((2, '*', 4))
(2, '*', 4)

在您的情况下,您可以使用以下内容构建str个问题:

question = "%i + %i" % (number1, number2)

question = "{} + {}".format(number1, number2)

并在函数input()中再次使用它:

answer = int(input("What is {} ".format(question)))

或者您可以直接使用元组 question

question = number1, '+', number2
answer = int(input("What is {} {} {}".format(*question)))

*将元组/列表变量转换为参数列表。所以这里有3个参数。因此,您需要3 {}

答案 1 :(得分:1)

你的问题应该是

question = '{} {} {}'.format(number1, operator, number2)

答案 2 :(得分:0)

不确定为什么需要格式化两次

answer = int(input("What is {0} + {1}?".format(number1, number2)))