2016-09-19 8 views
0

現時点では、私はこれをテストしており、理解したらプログラムに追加します。リストの中でリストの長さを見つける方法を知りたいだけです。リスト内のリストの長さはどのようにしてわかりますか? (Python3)

私が試してみた:

l = [["1","2","3"],["1","2","3","4"],["1","2","3","4","5"]] 
[print(len(x)) for x in l[0]] 

をしかし、それはちょうど1 3回を印刷します。 lの各リストの長さを印刷する(または返す)必要があります。

+0

だけそれが私のシステムに取り組んでいる 'L'に[0] ''リットルを変更... –

答えて

4

あなたはタイプミスがあります:あなたはl[0]と書いており、lは十分です。リスト内包で副作用を持っている悪い習慣であることを

for x in l: 
    print(len(x)) 

注 - リストの内包表記は、グローバルな状態を変更しないように、値を作成することです。 forループを使用する必要があります。それは、印刷

+0

何の副作用はOPのリストカンプにあるのですか?グローバルな状態はまったく変わっていません。それは単純に 'for'ループを作るもっと簡潔で平凡な方法です。 – MattDMo

+0

'print'は副作用です。リスト内包表記を使用して副作用を実行し、その値を放棄することは確かにPythonicではありません。 [この質問](http://stackoverflow.com/questions/5753597/is-it-pythonic-to-use-list-comprehensions-for-just-side-effects)をご覧ください。 –

+0

'print()'はどのように副作用がありますか?私はちょうど興味があります... – MattDMo

0
for x in l: 
    print(len(x)) 

3 
4 
5 
関連する問題