2016-05-03 12 views
-1

私は文字列のリストを持っていますが、私は各サブリストの2番目のインデックスを繰り返していきたいと思います。しかし、代わりに、それはここで...各文字列の各文字を評価された各文字列を評価するのは、私が何を意味するかです:Python - リスト文字列のリストを反復する

現在のコード:

fruit = [['bananna',"apple",'grape'],['ham',"sammy",'canada']]  
for l in range(len(fruit)): 
    for i in fruit[l][1]:  
     print i 

所望の出力:
リンゴ
サミー

電流出力:

P
P
L
電子


メートル
メートル
Y

本当に私は、各文字列で何らかのアクションを取るしたいと思います。その文字列を別のリストで検索しますが、今は文字列全体の文字列ではなく、文字列のすべての文字を評価しているようです。何をやっている

答えて

0

ソリューション:

>>> for l in fruit: 
...  print(l[1]) 
... 
apple 
sammy 

for文がiterate over the elements of a list(不要インデックス)することができますので、それが動作します。

元の問題:

1 fruit = [['bananna',"apple",'grape'],['ham',"sammy",'canada']]  
2 for l in range(len(fruit)): 
3 for i in fruit[l][1]:  
4  print i 

問題はライン3である。

    fruit[l]
  • (例えば['banana', 'apple', 'grape'])サブリストの一つです。
  • fruit[l][1]は、このリストの2番目の項目です('apple')。
  • for i in fruit[l][1]iterates over the string'apple')、各文字をピックアップします。
+0

これは機能します...私の方法で何が起こっていますか? –

+0

文字列はPythonでiterableです。何が起こっているのかは、フルーツ[l] [1]のiのために、すべてのサブリストの2番目の文字列のすべての文字を繰り返しています。 –

+0

このコードは質問に答えるかもしれませんが、理由や質問にどのように答えるかについての追加の文脈を提供することで、長期的な価値が大幅に向上します。あなたの答えを[編集]して、説明を加えてください。 – CodeMouse92

3

for l in range(len(fruit)): #you have the inner_loops in each iteration 

    for i in fruit[l][1]: # You already have what you want in fruit[l[1] 

     #you are now getting charcter by character from each value 

何をすべき:

ちょうどループをスキップします。そして、インデックスではなく、値で反復するのは非常に難しいです。

fruit = [['bananna',"apple",'grape'],['ham',"sammy",'canada']]  
for l in fruit:  
     print l[1] 
関連する問題