2014-07-07 13 views
2

我無法創建一個HTML表格,這正是我做錯了什麼,或者我應該添加什麼來完成這項工作。請幫助我只是不明白了。Python HTML表

此外,此代碼是從0-50生成一個斐波那契數列,並將它們顯示在表中的列中。

一個十進制列,六角柱,月柱,用2

#!/usr/local/bin/python3 

print('Content-type: text/html\n') 

def fib(n): 

    a, b = 0, 1 
    for i in range(n): 
     a, b = b, a + b 
    return a 

<table> 
    <tr> 
    <th>Index Number</th> 
    <th>Decimal</th> 
    <th>Hexadecimal</th> 
    <th>Octadecimal</th> 
    <th>float</th> 
</tr> 

for i in range (0, 51): 
    <tr> 
     <td>i</td> 
     <td>fib(i)</td> 
     <td>hex(fib(i))</td> 
     <td>oct(fib(i))</td> 
     <td>'%.2f' % float(fib(i))</td> 
    </tr> 
</table> 
+2

這是根本不是有效的Python。 – Ffisegydd

+1

您應該打印html而不是直接將其放入代碼中。 – timgeb

回答

2

這是一個與字符串格式化的幫助下很容易點精度浮點數(https://docs.python.org/2/library/string.html#formatstrings):

#!/usr/local/bin/python3 

print('Content-type: text/html\n') 

def fib(n): 
    a, b = 0, 1 
    for i in range(n): 
     a, b = b, a + b 
    return a 

print(''' 
    <table> 
     <tr> 
     <th>Index Number</th> 
     <th>Decimal</th> 
     <th>Hexadecimal</th> 
     <th>Octadecimal</th> 
     <th>float</th> 
    </tr> 
''') 

for i in range (0, 51): 
    print(''' 
    <tr> 
     <td>{0}</td> 
     <td>{1}</td> 
     <td>{1:x}</td> 
     <td>{1:o}</td> 
     <td>{1:.2f}</td> 
    </tr>'''.format(i, fib(i))) 

print('</table>')