2016-06-22 5 views
0
lines = [[str(i * j) for i in xrange(1, 13)] for j in xrange(1, 13)] 

for line in lines: 
    for num in line: 
     if line.index(num): 
      print ' ' * (3 - len(num)) + num, 
     else: 
      print ' ' * (2 - len(num)) + num, 
    print 

ための声明。のpython 2.7 line.indexもし私が<code>else</code>文が最初の行 に関係して<code>line.index(num)</code>は残りのラインに関係する理由を理解しようとしています九九

+0

あなたが投稿を編集し、私たちが読むことができるように書式設定されたコードを投稿することができます – Hani

+1

あなたが得ている問題を明確に説明してください。 @Bhansa。 – bhansa

+0

このようなコードの書式、特にPythonベースの質問を編集することはお勧めできません。書式設定が問題の原因であった可能性があります。 – SiHa

答えて

0

ifの文では、返される値がline.index(num)と何も比較されないため、ゼロ以外の値を返すと条件が満たされ、値0を返すとelseが返されます。

line.index(num)

戻り0 num場合はlineの最初のエントリであるので、唯一lineslineからの最初のエントリに作用します。

+0

@hollomありがとう、それは私が行方不明だったものです。 –

関連する問題