Python初心者のものです。
たとえば、[[a,"Tokyo"],[b,"sapporo"],[c,"Chiba"],[d,"Tokyo"]]といったような二次元配列があるとします。
この二次元配列の要素の中で、k二番目の要素に"Tokyo"を持つ要素を削除する、といった場合(上記の例の場合、[[b,"sapporo"],[c,"Chiba"]] といった配列を返したい)、どのように実装すればよいのでしょうか?
for文を使って試したのですが、うまくいきませんでした。
どなたかよろしくお願いいたします。
a = [["a","Tokyo"],["b","sapporo"],["c","Chiba"],["d","Tokyo"]] for i in range(len(a)): if a[i][1] == "Tokyo": del a[i]
こちらをためしたところIndexErrorがでてしまいました。
for文を使って試したのですが、うまくいきませんでした。とありますが、こちらのコードを提示してください。
for i in range(len(ary)): if a[i][1] == "Tokyo": del ary[i] はじめこのようにしたのですが、delで要素を削除した際にlengthも変化するため、indexErrorが出ているのでは、と考えました。
コード、改行なしで失礼します。
そちらのコードを質問に追記してください。これもちゃんと質問をするための練習です。「IndexErrorが出ているのでは、と考えました。」というのは実際にエラーが出たんですか?
承知しました。ご指導ありがとうございます。
回答1件
あなたの回答
tips
プレビュー