ホームページ > バックエンド開発 > Python チュートリアル > Python ではなぜ 1 要素タプルの末尾にカンマが必要なのでしょうか?

Python ではなぜ 1 要素タプルの末尾にカンマが必要なのでしょうか?

Mary-Kate Olsen
リリース: 2024-12-15 15:38:13
オリジナル
967 人が閲覧しました

Why Does Python Require a Trailing Comma for One-Element Tuples?

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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート