2016-03-30 10 views
0

Bir kullanıcının bir sayı girdiği bir uygulama yazdım ve uygulama bu sayının pitagorean üçlüsünü hesaplıyor.Bir jinja şablonunda listelerin python listesini görüntüleme

Üçlüleri bir listeye koyup bunları bir html tablosunda görüntülemekte sorun yaşıyorum. Sunucu Tarafı Yöntem:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>Pythagorean Triples</title> 
</head> 
<body> 
<table> 
    <th>A</th> 
    <th>B</th> 
    <th>C</th> 
    {% for triple in allTriples %} 
     <p>triple</p> 
     <tr> 
      {% for val in triple %} 
       <td>val</td> 
      {% endfor %} 
     </tr> 
    {% endfor %} 
</table> 
</body> 
</html> 

html gösterir sadece kelime "val": 15

[[3, 4, 5], [5, 12, 13], [6, 8, 10]] 

Jinja Şablon girildiğinde

def post(self): 
    allTriples = [] 
    c = int(self.request.get('c')) 
    print('c: ' + str(c)) 
    for i in range(1, c): 
     for j in range(1, c): 
      for k in range(1, c): 
       i2 = i*i 
       j2 = j*j 
       k2 = k*k 
       if ((i2 + j2) == k2) and (i < j): 
        singleTriple = [] 
        singleTriple.append(i) 
        singleTriple.append(j) 
        singleTriple.append(k) 
        allTriples.append(singleTriple) 
    d = { 
     'allTriples' : allTriples, 
    } 
    print(allTriples) 
    template = JINJA_ENVIRONMENT.get_template('triples.html') 
    self.response.out.write(template.render(d)) 

İşte listelerinin listesinin bir çıkış var sayıların olması gereken yer.

+0

ait <td>{{val}}</td> kullanmalıdır şablon kodunun yazım yanlışı ben sadece döngü içinde {{val}} ile val değiştirmeniz gerekiyor düşünüyorum. –

+0

ve benzer şekilde

üçlüsü

''

{{triple}} yerine

'('hata ayıklama için olduğunu varsayalım') –

cevap

0

Onun sadece yerine <td>val</td>