2016-07-07 15 views
-7

私は数学のクイズをpythonで作っています。しかし、すべての私のコードは正常に動作していますが、質問を括弧で囲み、カンマとアポストロフィで印刷しています。タプルのpythonから文字を削除する

私のタプルの名前です
question = number1, '+', number2 

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

私は疑問印刷する場所です:

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

私の出力は次のようになります。 (、、 '、)を削除する方法を知りたい。おかげさまで

+1

それは意味がありません、 '+'を使用し、 '*'を出力しますか?そしてあなたはそれが括弧を印刷すると確信していますか? – activatedgeek

+0

str((2、 '*'、4))。replace( "、"、 "")。replace( "'"、 "") – AceLearn

+0

どこに配置しますか? – Callum

答えて

0

ないあなたが二回

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

あなたの質問は、あなたのエラーについて

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

する必要がありますフォーマットする必要がある理由を確認してください。

question = number1, '+', number2は3つの要素

例のタプルを定義します:

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

"What is {}?".format(question)とすると、questionというパラメータからstrを作成します。 formatメソッドは、タプルquestionstrに変換し、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が必要です{}

関連する問題