次のタプルのタプルがあります。
my_choices=(
('1','first choice'),
('2','second choice'),
('3','third choice')
)
そして、最初に別のタプルを追加したい
another_choice = ('0', 'zero choice')
これどうやってするの?
結果は次のようになります。
final_choices=(
('0', 'zero choice')
('1','first choice'),
('2','second choice'),
('3','third choice')
)
another_choice
からタプルの別のタプルを作成し、連結します。
final_choices = (another_choice,) + my_choices
あるいは、括弧の代わりに角括弧を使用して、タプルの代わりにmy_choices
をタプルのリストにすることを検討してください。
my_choices=[
('1','first choice'),
('2','second choice'),
('3','third choice')
]
それからあなたは単にすることができます:
my_choices.insert(0, another_choice)
リストに変換したり元に戻したりしないでください。無駄なオーバーヘッドです。 +
はタプルを連結します。
>>> foo = ((1,),(2,),(3,))
>>> foo = ((0,),) + foo
>>> foo
((0,), (1,), (2,), (3,))
または、タプル連結を使用します
つまり.
final_choices = (another_choice,) + my_choices
持っているのは、タプルのリストではなく、タプルのタプルです。タプルは読み取り専用です。代わりにリストから始めてください。
>>> my_choices=[
... ('1','first choice'),
... ('2','second choice'),
... ('3','third choice')
... ]
>>> my_choices.insert(0,(0,"another choice"))
>>> my_choices
[(0, 'another choice'), ('1', 'first choice'), ('2', 'second choice'), ('3', 'third choice')]
list.insert(ind、obj)は、リスト内の指定されたインデックスにobjを挿入します...リスト内の任意の位置に任意のオブジェクトを押し込むことができます。