1 要素のタプル: カンマの難問
タプルを扱うとき、要素が 1 つだけあるタプルを作成しようとすると、よくある誤解が生じます。 。このような場合、文字列を括弧で囲めば十分だと思われるかもしれませんが、そうではありません。
次の例を考えてみましょう。
a = [('a'), ('b'), ('c', 'd')]
驚くべきことに、これらの要素では、文字列と文字列が混在しています。タプル:
['a', 'b', ('c', 'd')]
<type 'str'> <type 'str'> <type 'tuple'>
なぜこれが起こるのでしょうか?最初の 2 つの要素が文字列として解釈されるのはなぜですか?
その答えはタプルの構文にあります。単一の要素を持つタプルを作成するには、タプルであることを示す値の後にコンマを含める必要があります。
type(('a')) <type 'str'> type(('a',)) <type 'tuple'>
コード例を修正するには、最初の 2 つの要素にコンマを追加するだけです。
a = [('a',), ('b',), ('c', 'd')]
この構文は、リスト内のすべての要素がtuple.
あるいは、末尾のカンマ構文が魅力的ではない場合は、引数としてリストを受け取り、タプルを返す tuple() 関数を使用することもできます。
x = tuple(['a'])
以上がPython ではなぜ 1 要素タプルの末尾にカンマが必要なのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。