%
タプルを印刷するために、 -style 文字列フォーマットを使用したいと思います。
tup = (1,2,3)
print("this is a tuple: %s." % (tup))
のように印刷されるはずですThis is a tuple: (1,2,3).
が、代わりに というエラーが表示されますTypeError: not all arguments converted during string formatting
。
何が問題なのでしょうか、どうすれば修正できるのでしょうか?
この質問をわかりやすく現代風に編集する際に、元の例の興味深い点を1つ残しました。それは、 を囲む括弧tup
です。これらは必要はありません構文については%
、またタプルを作成しないOPはタプルのラッピング(ここでの回答で説明されている)が必要であることを理解していたが、単に間違っていた可能性があります。この問題の詳細については、要素が 1 つだけの「シングルトン」タプルを作成する方法。
ベストアンサー1
>>> thetuple = (1, 2, 3)
>>> print("this is a tuple: %s" % (thetuple,))
this is a tuple: (1, 2, 3)
(thetuple,)
ここで重要なのは、関心のあるタプルを唯一の項目、つまりパーツとして持つシングルトン タプルを作成することです。