2016-11-17 6 views
-1

を働いていないことデルのx [n]は、私がリストを持っていると私は最初の項目を削除しようとしています

私はこのコードを使用しようとしましたが、それは何も行いません

del rows[rows.index(userInfo)][9].split()[0] 
コンテキスト

rows[rows.index(userInfo)][9].split() 

ため

は、この文字列が

であり、文字列は、リストに文字列を分割されたリスト内の項目を検索し
+0

あなたは何を期待していますか? – Billy

+1

正常に動作します。それは、文字列を分割してリストを作成し、最初の項目を削除してリストを破棄します。 – kindall

+0

すぐに破棄されるリストの最初の要素を単に削除しています... – Bakuriu

答えて

0

mylist = ....split() 
del mylist[0] 

split()がインプレース動作しませんので、あなたはとにかくそれを格納する必要があります... だから、あなたも書くことができるのこのようにスライスして、インデックス、それをアウトか:

rows[rows.index(userInfo)][9] = " ".join(rows[rows.index(userInfo)][9].split().pop()) 

または

rows[rows.index(userInfo)][9] = " ".join(rows[rows.index(userInfo)][9].split()[1:]) 
+0

パーフェクト、私は ".join"を使用すべきだと感じましたが、実際にどのように使用するかは考えられませんでしたが、今はもっと感謝しています! –

+1

うわー、あなたはどう思ったのですか、彼はもう一度それに参加したいですか? – derM

+0

彼の例ではサブリストの10番目の要素しか参照していないので、メインリスト( 'rows')は同質のサブリストで構成されていて、10番目の要素を参照するときは文字列とリストが混在しているとは思いません参照がランダム(ish)または繰り返しイベントである場合は、後で任意のサブリストを指定します。 – Kyrubas

0

あなたは、単一の行でそれを行う場合は、次の

lst = rows[rows.index(userInfo)][9].split() 
del lst[0] 

、あなたがsplit()によって作成されたリストを保存するので、匿名のリストから要素を削除すると、実用的な効果はありませんされていません試してみてください。最初に変数にリストを代入すると、delで最初の要素を削除して、好きなようにリスト上で行動することができます。

0

私は、あなたが永続的ではないリストから何かを削除しようとしていると思います。
....split()は、要素を削除しようとするリストを返します。しかし、このリストは保存されません。
あなたは少なくとも二行必要があります:あなたはpop()を使用することができます

mylist = foo.split()[1:] 
関連する問題